ProcessWireWebサイトのUbuntuVPSへの移行
ステータス:非推奨
この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。
理由: Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達しました and no longer receives security patches or updates. This guide is no longer maintained.
代わりに参照してください:このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。
序章
ProcessWire は、柔軟なオープンソースのPHPコンテンツ管理システムです。 クライアントにとっては更新が簡単であり、開発者にとっては一緒に作業することができます。
システム要求
ProcessWireを実行するには、標準のLAMPスタックが必要です。 ドロップレットを作成するときは、[アプリケーション]で[UbuntuのLAMP]を選択します。 要件の完全なリストは、こちらで入手できます。
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
mod_rewriteを有効にする
ProcessWireでは、 mod_rewritePHPモジュールが有効になっている必要があります。 Digital OceanのLAMPアプリケーションドロップレット構成を使用する場合は、すでにインストールされている必要があり、有効にするだけで済みます。 これを有効にしてApacheを再起動するには、次のコマンドを実行します。
a2enmod rewrite 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をダウンロードしてインストールする準備が整います。
サイトのファイルを圧縮します
アップロードを高速化するために、Webサイトの圧縮アーカイブを作成します。
WebサイトにもMySQLダンプを含めるようにしてください。
デフォルトでは表示されない.htaccess
ファイルを忘れないでください。 このファイルは必須です。
tar cvf site_name.tar directory/
ProcessWireWebサイトをアップロードする
コマンドプロンプトで次のコマンドを入力して、Webサイトにログインします。
ssh user@yourdomain
パブリックWebディレクトリに移動します。
cd /var/www
安全なコピーを使用して、Webサイトのアーカイブをドロップレットにアップロードします。
MySQLダンプファイルのコピーも必ずアップロードしてください。
Webサイトのアーカイブを解除する
Webサイトがアップロードされたら、次のコマンドを使用してWebサイトを抽出できます。
tar xvf website.tar
これにより、Webサイトがwebsite/
というフォルダーにアーカイブ解除される場合があります。 この場合、含まれているすべてのファイルを1つのディレクトリに戻して/var/www
に戻す必要があります。 これは、次のコマンドで実行できます。
cd website mv * ..
MySQLのインポート
データベースを作成する
MySQLのユーザー名とパスワードがすでに作成されていると仮定すると、MySQLにログインしてデータベースを作成する必要があります。
mysql -u username -ppassword
ログインに成功すると、mysql >
が表示されます。 次のコマンドを実行して、新しいデータベースを作成します。
create database dbname;
データベースが適切に作成されたことを確認するには、次のコマンドを実行できます。
show databases;
MySQLダンプをインポートします
データベースができたので、次のコマンドを使用してMySQLダンプファイルをデータベースにインポートできます。
mysql -u username -ppassword dbname < path/to/mysqldump.sql
config.php
を更新
データベースをアップロードしたので、site/config.php
ファイルを新しいデータベースクレデンシャルで更新する必要があります。
$config->dbHost = 'localhost'; $config->dbName = 'dbname'; $config->dbUser = 'username'; $config->dbPass = 'password'; $config->dbPort = '3306';
仕上げ
あなたのウェブサイトをチェックしてください。 すべてが正しく機能していることを確認するには、いくつかのページにアクセスしてダッシュボードにログインします。
正常にログインできない場合は、/site/assets/sessions
ディレクトリが存在しないか、書き込みができない可能性があります。
ファイルをアップロードしてログインできるように、/site/assets
フォルダーがサーバーによって書き込み可能であることを確認する必要があります。
また、Webサイトが正常に機能したら、MySQLダンプファイルを必ず削除してください。
参考文献
ProcessWireについて質問がある場合は、フォーラムを試すことができます。