PHP
CMS
fedora
Grav

俺のGrav - 1.1セットアップ

More than 1 year has passed since last update.


Gravとは

RDBMSを使わないシンプルでカッコいいPHP製のCMS。

https://getgrav.org/

tmp00148.png

コーポレートサイトやブログにも使える。

Markdown記法、Twigと入力方法を選べる。


条件



  • ここと同じ様にサーバがセットアップされていること


    • リンク先はFedoraなのでCentOSの人は適宜読み替える

    • てかCentOSなんかもうどうでもいいから、依存関係でトラブらないFedoraにすればいいよ




インストール


  • 以下の3つの方法がある。


    • zipを落として解凍

    • composerでインストール

    • Githubからインストール



  • zipを落とすのが一番処理が早い

  • サーバからgrav+adminをcurlで落としてくる


    • $ cd /path/to/grav


    • $ curl -L -O https://github.com/getgrav/grav/releases/download/1.1.4/grav-admin-v1.1.4.zip


      • 最新版は都度チェックすること





  • 解凍する


    • $ unzip grav-admin-v1.1.4.zip

    • $ mv grav-admin htdocs




nginxの設定



  • /path/to/grav/htdocsがgravのインストールパスとする


    • ユーザとグループが適切になってることとする


      • 面倒なときはchown -R nginx:nginxでnginx管理下にすればOK



    • cacheディレクトリが書き込み可能になってる事



      • chmod -R 707 cacheでOK






  • example.comがドメインとする


設定



  • /webserver-config/nginx.confをコピーする


    • cp /path/to/grav/htdocs/webserver-configs/nginx.conf /etc/nginx/conf.d/grav-admin.conf




  • vi /etc/nginx/conf.d/grav-admin.conf



    • #listen 80; → コメントアウトを外す


    • root → /path/to/grav/htdocs;


    • server_name → example.com;


    • fastcgi_pass → unix:/var/run/php-fpm/php-fpm.sock;



  • nginxをリロード


    • $ nginx -s reload




grav管理ユーザを作成


  • ブラウザで閲覧すると自動的にadminディレクトリに移動する

  • 以下の項目を埋める


    • Username → 小文字のみでユーザ名を決める

    • Email → メールアドレス

    • Password →パスワード

    • Confirm Password →パスワード確認

    • Full name → 本名

    • Title → 肩書



  • 管理画面にログイン後、自分のアイコンクリックして表示を日本語に変更可能


テーマをインストール



  • ここにいくつかあるので好きなテーマの名前をコピーしておく


    • マウスオーバーでコマンドコピーのボタンが表示される



  • 以下のコマンドでインストール


    • cd /path/to/grav/htdocs


    • bin/gpm install <テーマ名>


      • ZipArchiveエラーが出る場合はphp-pecl-zipが入ってないのでdnfで入れてから再度やってみる





  • 管理画面でテーマを変更する


メモ


  • プラグインやテーマなどの更新でZipArchiveエラーが出る場合、zipモジュールが読み込まれていない



    • /etc/php.iniextension=zip.soを追記

    • 追記したらphp-fpmとnginxを再起動



  • テーマ更新時にPermission deniedエラーが出る場合、user/themeディレクトリがrootオーナーになってる



    • user/theme以下をnginxユーザ、nginxオーナに変更

    • もしくは書き込み可能にしておく