UbuntuVPSにProcessWireをインストールする方法

提供:Dev Guides
移動先:案内検索

序章

ProcessWire は、柔軟なオープンソースのPHPコンテンツ管理システムです。 クライアントにとっては更新が簡単であり、開発者にとっては一緒に作業することができます。

システム要求

ProcessWireを実行するには、標準のLAMPスタックが必要です。 ドロップレットを作成するときは、[アプリケーション]で[UbuntuのLAMP]を選択します。

要件の完全なリストは、こちらで入手できます。

Ubuntuを更新する

すべてのモジュールが正しくインストールされるようにするには、追加のモジュールをインストールする前に、必ず次のコマンドを実行してください。

apt-get update

mod_rewriteを有効にする

ProcessWireでは、 mod_rewritePHPモジュールが有効になっている必要があります。 Digital OceanのLAMPアプリケーションドロップレット構成を使用する場合は、すでにインストールされている必要があり、有効にするだけで済みます。 これを有効にしてApacheを再起動するには、次のコマンドを実行します。

a2enmod rewrite
service apache2 restart

htaccessを有効にする

mod_rewriteを使用するには、htaccessオーバーライドを有効にする必要があります。 デフォルトのホスト構成ファイルを変更する必要があります。 これは次の場所にあります。

/etc/apache2/sites-available/default

vimまたはnanoで開きます。 次のセクションを探します(Directory /var/wwwで始まります)。

<Directory /var/www/>
  Options Indexes FollowSymLinks MultiViews
  AllowOverride None 
  Order allow,deny
  allow from all
</Directory>

AllowOverride Noneと表示されている場合は、AllowOverride Allに変更してください。

GDを有効にする

ProcessWireでは、CMSを介してアップロードされた画像のサイズを変更したりトリミングしたりするために、GDをインストールする必要があります。 GDをインストールして実行するには、次のコマンドを使用します。

apt-get install php5-gd
service apache2 restart

メールの送信を有効にする

Webサイトに連絡フォームを表示する場合は、 sendmail がインストールおよび構成されていることを確認して、パスワード回復や連絡フォームなどの電子メールを送信する機能を使用できるようにする必要があります。

apt-get install sendmail
sendmailconfig
service sendmail restart
service apache2 restart

PHPメールを高速化するには、/etc/hostsにあるホストファイルに次の行を追加し、yourhostnamehereをホスト名に置き換えます。

127.0.0.1 localhost localhost.localdomain yourhostnamehere

すべてのモジュールが正しくインストールされていることを確認してください

サイトのURLのPHP情報ページにアクセスして、すべてのモジュールがhttp://yourhostname/info.phpに正しくインストールされていることを確認します。ここで、yourhostnameを実際のホスト名に置き換えます。

  • GD
  • sendmail
  • mod_rewrite

それらが揃ったら、ProcessWireをダウンロードしてインストールする準備が整います。

ProcessWireをダウンロードする

Webルートフォルダに移動します。

cd /var/www

ProcessWireをダウンロードする最も簡単な方法は、wgetを使用して安定したProcessWireリリースの1つをフェッチすることです。

wget https://github.com/ryancramerdesign/ProcessWire/archive/2.4.0.tar.gz

上記のリンクは、この記事の執筆時点での最新リリースを参照していますが、利用可能なすべてのリリースここから選択できます。

上記のコマンドは、ファイル2.4.0.tar.gzをダウンロードしました。 これらのファイルを抽出してWebルートに移動するには、次のコマンドを使用します。

tar -zxf 2.4.0.tar.gz
cd ProcessWire-2.4.0
mv * ..
cd .. # go back to /var/www
rm -r ProcessWire-2.4.0 # deletes unneeded directory
rm index.html # the default index.html needs to be removed to use ProcessWire

ここで指定されているバージョン番号は、ダウンロードしたものとは異なる場合がありますのでご注意ください。

ブラウザにProcessWireをインストールします

ブラウザでWebサイトに移動します。 そこから、インストール画面が表示されます。

site-defaultの名前をsiteに変更するように求められる場合があります。 これを行うには、次のコマンドを実行します。

mv site-default site

ページをリロードすると、警告バーが消えます。 「はじめに」をクリックします。

要件を確認する

ProcessWireがスムーズにインストールおよび実行されるようにするには、互換性チェックのすべての項目が緑色で表示されていることを確認する必要があります。

エラーメッセージが表示された場合は、siteフォルダがアプリケーションによって書き込み可能であることを確認してください。 これを行う1つの方法は、次のコマンドを使用することです。これらのコマンドは、インストール後に安全になります。

chmod -R 777 site/assets
chmod 666 site/config.php

また、htaccess.txtの名前を.htaccessに変更します。

mv htaccess.txt .htaccess

すべてが緑色であれば、続行しても安全です。

データベースのクレデンシャルを入力し、ファイルのアクセス許可を変更します

次の画面では、データベースのクレデンシャルと使用するデータベースの入力を求められます。

デフォルトを変更する場合は、ファイルのアクセス許可を設定するオプションもあります。デフォルトでは、ディレクトリは755、ファイルは644です。 これは、後でsite/config.phpファイルで変更できます。

MySQLでユーザーとデータベースを作成し、そのユーザーに権限を付与する必要があります。

データベースを作成する

MySQLのユーザー名とパスワードがすでに作成されていると仮定すると、MySQLにログインしてデータベースを作成する必要があります。

mysql -u username -ppassword

ログインに成功すると、mysql >が表示されます。

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
create database pwtest;
grant all privileges on pwtest.* to username@localhost identified by 'password';

データベースが正常にアクセスされ、アクセス許可がファイルとディレクトリに適用された場合、次のページはすべて緑色で表示されます。

このページでは、使用する管理テーマとログインURLを選択することもできます。 デフォルトはhttp://yourdomain.com/processwireです。

ユーザー名とパスワードを選択してください

このとき、ユーザー名とパスワードを作成することもできます。 デフォルトのユーザー名はadminですが、デフォルト以外のユーザー名を使用することをお勧めします。 パスワードは6文字以上にする必要があります。

仕上げ

すべてが正しく行われた場合、次の画面に、ProcessWireがインストールを保護するために行ったことに関する情報が表示されます。

インストールスクリプトを削除します。

rm install.php

インストールファイルを削除します。

rm -r /var/www/site/install/

構成ファイルを読み取り専用にします。

chmod 444 /var/www/html/site/config.php

この時点で、インストールを表示したり、Webサイトにログインしたりできます。

参考文献

ProcessWireについて質問がある場合は、フォーラムでフレンドリーなProcessWireコミュニティに連絡できます。

提出者: [[“%3Ca|http]] ://tinaciousdesign.com [[“%3C/a|”>ティナホリー]]