Pickles 2

セットアップ手順

Pickles 2 プロジェクトのセットアップ手順について説明します。

Pickles 2 プロジェクトを作成

Pickles 2 プロジェクト は、PHP環境で動作するウェブアプリケーションの雛形で、Composerコマンドを使って簡単にインストールすることができます。

この章では、 Pickles 2 プロジェクトのセットアップ手順について説明します。

事前準備、環境構築

Pickles 2 を始める前に、お使いのシステム環境を確認してください。

  • Linux、macOS、またはWindows が動作するコンピュータ
  • PHP 7.3 以降
  • Composer コマンド
  • Git コマンド

Pickles 2 が動作するために、システム上で phpコマンド、composerコマンド、gitコマンドがインストールされ、パスが通されている必要があります。

これらの環境が整っていない場合は、参考: 周辺環境のセットアップ方法 のページを参考に、環境を構築してください。

新規 Pickles 2 プロジェクトを作成する

composer コマンドを使用して、新規 Pickles 2 プロジェクトを作成します。

"コマンドプロンプト" (macOSでは "ターミナル")を開いて、インストールしたい先のディレクトリに移動してください。

$ cd /path/to/your/working_directory

このコマンドは、インストール先のディレクトリへ移動すること指示しています。/path/to/your/working_directory の部分をインストール先のディレクトリのパスに置き換えてください。

ただし、ディレクトリ内は、何も含まれていない空っぽの状態である必要があります。

続いて、インストールコマンドを実行します。
$ composer create-project pickles2/pickles2 ./

インストールが完了したら、指定したディレクトリの中に、いくつかのファイルとディレクトリが生成されます。

次のコマンドを実行して、バージョン番号が表示されれば成功です。

$ php src_px2/.px_execute.php "/?PX=api.get.version"
"2.1.16"

Git リポジトリを初期化する

Git を使ってプロジェクトを世代管理する場合は、次の手順で Gitリポジトリを初期化してください。

$ cd /path/to/your/working_directory
$ git init
$ git add --all -v ./
$ git commit -m "initial commit"

.gitkeep がコミットされない場合

キャッシュを生成するディレクトリなど、.gitkeep が設置されています。Gitの除外設定によって、コミットできない場合は、git commit の前に次のコマンドを実行し、追加してください。

$ cd /path/to/your/working_directory
$ git add -fv src_px2/common/px_resources/.gitkeep
add 'src_px2/common/px_resources/.gitkeep'
$ git add -fv px-files/_sys/ram/*/.gitkeep
add 'px-files/_sys/ram/applock/.gitkeep'
add 'px-files/_sys/ram/caches/.gitkeep'
add 'px-files/_sys/ram/data/.gitkeep'
add 'px-files/_sys/ram/publish/.gitkeep'

ウェブサーバーを設定する

Pickles 2 プロジェクトのインストールが完了したら、ウェブサーバーを起動してブラウザから操作できるようにします。

ウェブサーバーを起動するいくつかの方法について説明します。

開発用簡易ローカルサーバーを使用する場合

PHPに内蔵されている開発用の簡易サーバーを利用する方法です。

pickles2/pickles2 からセットアップしたプロジェクトでは、composer.json に簡易サーバーの起動コマンドが予め登録されています。これを使用してローカル環境を起動する方法について説明します。

プレビュー・管理画面

次のコマンドで、起動します。

$ composer start

サーバーが起動したら、ブラウザで http://127.0.0.1:8080/ にアクセスしてプレビューできるようになります。

サーバーを終了するときは、 Ctrl + C をタイプしてください。

公開コンテンツ

パブリッシュされた公開コードを静的に確認したい場合は、代わりに次のコマンドを使います。

$ composer run-script start-pub

サーバーが起動したら、ブラウザで http://127.0.0.1:8081/ にアクセスしてプレビューできるようになります。

サーバーを終了するときは、 Ctrl + C をタイプしてください。

Apache を使用する場合

Pickles 2 プロジェクトを Apache + PHP の環境で動作させることができます。 一般的な LAMPP 環境で動作します。

プレビュー・管理画面

次のコードは Apache の設定例です。プレビューおよび Clover CMS の管理画面は、 src_px2 に格納されているので、ここをドキュメントルートに設定します。.htaccess を有効にするための AllowOverride All と、PHPを動作させるための AddType application/x-httpd-php .php を含めてください。

より詳しい設定方法については、Apache および PHP のドキュメントを参照してください。

Listen 8080
NameVirtualHost *:8080

<Directory "/path/to/your/working_directory/src_px2">
    AllowOverride All
    AddType application/x-httpd-php .php
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
</Directory>
<VirtualHost *:8080>
    DocumentRoot "/path/to/your/working_directory/src_px2"
</VirtualHost>

公開コンテンツ

静的にパブリッシュされた公開コンテンツは、 dist に格納されているので、ここをドキュメントルートに設定します。パブリッシュされたコンテンツは基本的に静的なHTMLなどのファイル群なので、ドキュメントルート配下を静的に配信するシンプルな設定を与えます。

Listen 8081
NameVirtualHost *:8081

<Directory "/path/to/your/working_directory/dist">
    AllowOverride All
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
</Directory>
<VirtualHost *:8081>
    DocumentRoot "/path/to/your/working_directory/dist"
</VirtualHost>

Nginx を使用する場合

Pickles 2 プロジェクトを Nginx + PHP の環境で動作させることができます。

プレビュー・管理画面

次のコードは Nginx の設定例です。プレビューおよび Clover CMS の管理画面は、 src_px2 に格納されているので、ここをドキュメントルートに設定します。Nginxでは、 .htaccess に相当する機能が使えないので、パスをリライトする設定を含めます。および、PHPを動作させるためのFast-CGIの設定を含めてください。

より詳しい設定方法については、Nginx および PHP のドキュメントを参照してください。

http {
    server {
        # Preview
        listen 8080;
        server_name localhost;
        root /path/to/your/working_directory/src_px2;

        # Pickles Framework へ転送
        location ~ ^(?!/\.px_execute\.php/).*?(/|\.(html|htm|css|js))$ {
            rewrite ^/(.*)$ /.px_execute.php/$1 last;
        }
        # 除外ファイルへのアクセスを拒否
        location ~ ^/(?!\.px_execute\.php/).*?\.(?:ignore)([\.\/].*)?$ {
            rewrite ^/(.*)$ /.px_execute.php/.ignore.html last;
        }

        # Fast−CGI - PHP
        location ~ \.php/ {
            try_files $uri $uri/ @php-fpm;
        }
        location @php-fpm {
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            fastcgi_pass   unix:/path/to/fastcgi/nginxFastCGI.sock;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include fastcgi_params;
            fastcgi_param PATH_INFO $fastcgi_path_info;
        }
    }
}

公開コンテンツ

静的にパブリッシュされた公開コンテンツは、 dist に格納されているので、ここをドキュメントルートに設定します。パブリッシュされたコンテンツは基本的に静的なHTMLなどのファイル群なので、ドキュメントルート配下を静的に配信するシンプルな設定を与えます。

http {
    server {
        # Dist
        listen 8081;
        server_name localhost;
        root /path/to/your/working_directory/dist;
    }
}

管理画面の初期設定

セットアップした直後にプレビューにアクセスすると、 管理画面の初期設定画面が開きます。

初期設定では、お名前、ユーザーID、パスワード、メールアドレス、使用する言語 を入力して、最初の管理者ユーザーを作成します。

この初期設定画面は、ユーザーが定義されていない場合に表示されるものです。最初の管理者ユーザーが作成されたあとには表示されなくなります。

管理者ユーザーの作成に成功すると、続いてログイン画面が表示されます。先程作成した最初の管理者ユーザーのIDとパスワードを入力し、ログインしてください。

パッケージのアップデート

しばらくすると、新機能やバグ修正などが反映された新しいバージョンのパッケージが公開されることがあります。

時々 composer update を実行して、ライブラリを最新バージョンに保つようにしてください。

次のコマンドでパッケージを更新することができます。

$ composer update

新しいバージョンがリリースされているか知るには、 更新履歴 を参照してください。

Pickles 2 プロジェクト のアンインストール

不要なプロジェクトを削除する場合は、 ディレクトリごと削除します。

Apache や nginx にバーチャルホストを設定した場合は、この設定も削除してください。