Z世代によるインターネット実験室-Gravを極めたい①

通行人R
2023-02-08
2023-02-08
目次

r-j1-001

🎬初めに

お久しぶりです!!フューチャースピリッツ、エンジニアブログの中の人、「通行人R」でございます!

Web業界に携わる人なら一度は聞いたことがあるであろうCMS!

世界シェア率ダントツ 1 位の大人気「WordPress」や国産開発で国内シェア率の高い「Movable Type」等など世の中には様々なCMSが存在します!!

そんな数あるCMSの中から通行人Rが個人的に激押ししている、ちょっと変わった特徴を持つCMSを皆様にご紹介いたします!!

それでは「Z世代によるインターネット実験室Gravを極めたい①」スタートです!

📘フラットファイルCMSとは?

r-j1-002

皆様、ファイルフラットCMSをご存じでしょうか…?

世間では「Flat-File CMS」と呼ばれておりますが.....本記事では皆様により親しんでもらいたく、英語表記ではなく、カタカナでファイルフラットCMSと呼ばせて頂きます!!

今回の主役「Grav」もファイルフラットCMSに分類されるCMSとなります!!

「Grav」を紹介する前に、まずはファイルフラットCMSについて簡単に紹介させていただきます!

さてさて、前置きはここまでにしまして、結局ファイルフラットCMSとは何なのか??

それはズバリ.....データベースを使用しないCMSです!!

なるほど!と思った方も、そうでないと思った方もご安心ください!!

分かりやすく解説させて頂きます!!

一般的なCMS


r-j1-002-1

CMSの代表的なサービスとして、「WordPress」や「Movable Type」「concrete5」等を思い浮かべる人が多いのではないでしょうか??

実際、CMSのシェア率調査として50%以上がWordPressで構築されているというデータがあるようでございます!

その圧倒的支持率を持つWordPressや先ほど挙げさせて頂いた、その他のCMSはデータベースを使用してサイトデータを保存する方法を採用しております。

その為、該当のCMSを使用するには、システムを構成する言語環境に加えて対象のCMSに利用可能なデータベース環境も併せて用意する必要があります。

よく使われるシステム構成言語
  • PHP
  • perl
  • Python
よく使われるデータベース
  • MySQL
  • MariaDB
  • PostgreSQL

フラットファイルCMS

r-j1-002-2

先程、一般的なCMSではデータベースを使用したデータ保存方式を採用していると述べさせて頂きましたが、ファイルフラットCMSでデータベースを使用しないデータ保存方式を採用し構成されております。

具体的にはデータベース等の機能を使用せずTXTファイルMarkdownXML等でサイトデーターが保存され動作しております。

今回の主役「Grav」はMarkdownファイルにてサイトデーターが保存され動作しております!!

ファイルフラットCMSでは一般的なデータベースを使用したCMSとは異なり、データベースを使用せずサイトデータの読み込みを行うため、通常のCMSに比べてより高速に動く等のメリットがあります!!

またデータベースを使用しない事により、CMSインストール時のサーバー動作要件を満たしやすくなるといったメリットもございます。

その他にも様々なメリットがございますので以下にまとめて記載致します!

フラットファイルCMSの様々なメリット
  • データベースの無い格安サーバーでも動作する
  • データベースを使用したCMSより高速に動く
  • サイトの運用管理がシンプルに行える
  • サイトの作成やカスタマイズ時にデータベースの知識を必要としない
  • バックアップの作成が簡単にできる
  • サイトの引っ越しが簡単に行える

フラットファイルCMSの紹介

📁Grav

contents02-3-4_page-0001

Grav公式サイト

Gravはデータベースを使用しない「データベースレス」のCMSとなっております。

またシンプルかつ洗練された管理画面が用意されており、記事の投稿や編集等が直感的に簡単に行えます。

その他にもテーマやプラグイン等が多く開発されており様々な用途で使用できるCMSとなります。

📁Pico

contents02-3-5_page-0001

Pico公式サイト

PicoもGravと同様にデータベースを使用しない「データベースレス」のCMSとなっております。

PicoはGrav以上にシンプルにシステム構成されており超高速に動く事を売りとしたCMSになります。

PicoにはGravのようなGUI管理画面が存在せず自身でマークダウンファイルを作成、設置する必要がございます。

その為、多少の知識を必要としますが、サーバーに侵入されない限り第三者に操作される事は無く、セキュリティの強固なCMSとなっております!!

📁WonderCMS

contents02-3-6_page-0001

WonderCMS公式サイト

WonderCMSもGravと同様にデータベースを使用しない「データベースレス」のCMSとなっております。

WonderCMSはPicoと同様に軽量で超高速に動く事を売りとしたCMSになります!

WonderCMSの初期構成ファイルは5つのファイルのみとなっております!

驚きの少なさですね!!

ファイル数が少ないことにより、インストールやバックアップ、サイト引っ越し等の作業がより簡単に行えます。

PicoにはGUI管理画面が存在しませんでしたが、WonderCMSはとてもシンプルな管理画面が存在ます!

その為、知識を必要とせず誰でも簡単にページの作成、編集を行うことが出来ます。

ただし複数のユーザーを作成する事は出来ずスーパーユーザーのみの提供しております。

その為、権限や操作範囲の制限をアカウント毎に設定する事が出来ません。

上記の理由から個人規模でのサイト構築に適しているCMSとなります!

📘Gravの動作に必要なインストール要件

r-j1-003

では早速!!「Grav」のインストールを行っていきたい所ではございますが.....

ちょっとその前に!!「Grav」をより深く知る為、インストール要件を確認していきましょう!!

インストール要件とは?

CMSを始めとするWEBアプリケーション等は、動作に必要なインストール要件がございます。

インストール要件とはインストールしたいアプリケーションを正常に動作させる為の環境条件のようなものです!!

王道のWordPressを例にして解説致します!!

r-j1-003-1

WordPressをインストールし使用するには「Webサーバー」「データベース」「PHP」を三つを用意する必要がございます。

先述した三件の条件を満たさないサーバー環境ではWordPressを動かす事が出来ません。

このように使用したいアプリケーションにあわせてインストール要件にあうサーバー環境を用意する必要がります。

Gravのインストール要件

r-j1-003-2

インストール要件公式リンク

Gravのインストール要件はたったの二つ!!WEBサーバーとPHPです!!

それでは各項目の詳細を簡単に説明させていただきます!

 

📁WEBサーバー

Gravを使用する際に利用できるWEBサーバーは「Apache」「nginx」「IIS」等がございます!

その中でも今回はWEBサーバーとして王道の「Apache」を利用したいと思います。

Apacheを利用してGravを使用する場合、「mod_rewrite」のモジュールやmod_ssl」のモジュールを有効化する必要がございます。

mod_rewrite」モジュールは要求されたURLをApacheにて別のURLに書き換えてくれるモジュールとなります。また特定のURLを別のURLにリダイレクトしたり、内部プロキシを呼び出したりするためにも使用できます!

mod_rewriteとは?

「mod_ssl」モジュールはサイトのSSL化を行うモジュールになっております。近年WEB業界ではサイトのSSL化は必須になりつつあります。その為、有効化する事をお勧め致します。

mod_sslとは?

またGravは「.htaccess」を使用して動作致します。その為「AllowOverride All」を設定し「.htaccess」を有効化する必要がございます。

またGravを独自ユーザアカウントで実行する場合は、「mod_mpm_itk_module」をインストールし有効化する必要があるようです。「mod_mpm_itk_module」については下記URLをご確認ください。

mod_mpm_itk_moduleについて

 

📁PHP

Gravを使用する際に推奨となるPHPバージョンはPHP 7.3.6またはそれ以上のバージョンとなります。その他にも下記モジュールがインストールされている必要がございます。

  • curl
  • ctype
  • dom
  • gd
  • json
  • mbstring
  • openssl
  • session
  • simplexml
  • xml
  • zip

モジュールのインストール確認方法は2つございます。

1つはサーバコンソルより下記コマンドを実行する事で確認できます!!

php -m

もう一つはWebサーバー上記下記内容のPHPファイルを作成する事で確認可能です!

<?php
phpinfo( );
?>

また上記方法にて自身での確認が難しい場合は契約しているサーバー会社にお問合せを行う事で確認する事が出来る場合がございます。その他にもサーバーの仕様書やサービスページ等にも記載がある場合がございます!!

🎯まとめ

r-j1-004

いかがだったでしょうか。今回はフラットファイルCMSの特徴とGravの動作に必要なインストール要件について軽く解説させて頂きました!!

さて次回の「Z世代によるインターネット実験室」は今回、解説したGravのインストールを行っていきたいと思います!!

それではまた次回の記事でお会いしましょう!