WordPress & bbPress を Nginx で動かす
Ubuntu 14.04 で WordPress と bbPress のインストールを行った。
パッケージのインストール
apt-get install mariadb-server nginx php5-mysql php5-fpm php5-gd
ここでは MySQL ではなくて MariaDB を用いたが、 MySQL を使用しても同様にできるはず。
nginx の設定
/etc/nginx/sites-available/default は PHP 関係のコメントアウトされている部分を参考にして
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/html;
index index.html index.htm index.php;
# Make site accessible from http://localhost/
server_name localhost;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
のようにした。
service nginx restart
PHP のファイルが表示できるかどうかを確認する。 /var/www/html/index.php に
<?php phpinfo(); ?>
と書き、設定しているサーバの IP が 192.168.0.20 なら http://192.168.0.20/ にアクセスして確認する。
WordPress を使うには
location / {
try_files $uri $uri/ =404;
}
の部分を
location / {
try_files $uri $uri/ /index.php?$args;
}
とする。
WordPress
WordPress のインストール
まず、日本語版をダウンロードする。
wget https://ja.wordpress.org/wordpress-4.4.2-ja.zip
テストで使った index.php を削除してから、wordpress を設置する。
rm /var/www/html/index.php
rmdir /var/www/html
unzip wordpress-4.4.2-ja.zip
mv wordpress /var/www/html
データベースを作成する。
mysql -u root -p
で
create database wordpress;
grant all privileges on wordpress.* to "wpuser"@localhost identified by "wordpress-password";
flush privileges;
とする。ここでは、データベース用のユーザを wpuser、そのパスワードを wordpress-password としている。
wp-config.php の編集
cd /var/www/html
cp wp-config-sample.php wp-config.php
として wp-config.php を作り、データベースの設定を書き込む。
/** WordPress のためのデータベース名 */
define('DB_NAME', 'wordpress');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'wpuser');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'wordpress-password');
https://api.wordpress.org/secret-key/1.1/salt/ にアクセスして表示される設定をファイルの該当する場所に書き込む。
define('AUTH_KEY', '**********');
define('SECURE_AUTH_KEY', '**********');
define('LOGGED_IN_KEY', '**********');
define('NONCE_KEY', '**********');
define('AUTH_SALT', '**********');
define('SECURE_AUTH_SALT', '**********');
define('LOGGED_IN_SALT', '**********');
define('NONCE_SALT', '**********');
これで、WordPress の設定は終わりで、 サーバの IP が 192.168.0.20 なら http://192.168.0.20/ にアクセスして、指示にしたがって設定していく。
WordPress は FTP や SFTP を使ってプラグインをブラウザ上でインストールできるように 設定することは可能らしいが、今回は行わなかった。 SSH でアクセスして所定のディレクトリにプラグインのファイルを配置することで プラグインのインストールを行った。
bbPress
wget https://downloads.wordpress.org/plugin/bbpress.2.5.8.zip
unzip bbpress.2.5.8.zip
mv bbpress /var/www/html/wp-content/plugins/
としてから、管理画面の「プラグイン」で bbPress を有効にする。
bbPress の URL を bbPress Permalinks with ID を使って ID を使う形式にする。
wget https://downloads.wordpress.org/plugin/bbpress-permalinks-with-id.1.0.4.zip
unzip bbpress-permalinks-with-id.1.0.4.zip
mv bbpress-permalinks-with-id /var/www/html/wp-content/plugins/
としてから管理画面で有効にする。
bbPress で画像や動画の投稿をできるようにするには GD bbPress Attachments を使うには
wget https://downloads.wordpress.org/plugin/gd-bbpress-attachments.zip
unzip gd-bbpress-attachments.zip
mv gd-bbpress-attachments /var/www/html/wp-content/plugins
mkdir /var/www/html/wp-content/uploads
chmod 777 /var/www/html/wp-content/uploads
としてから、管理画面で GD bbPress Attachments を有効にする。 プラグインを有効にするだけでなく PHP や Nginx の設定でアップロードできるファイルのサイズを設定しないといけない。 たとえば、/etc/php5/fpm/php.ini で
post_max_size = 30M
upload_max_filesize = 30M
のように設定し、Nginx の設定 (ここでは、/etc/nginx/sites-available/default) には
client_max_body_size 50M;
のように設定する。
不要なプラグインの削除
次のようにして Hello Dolly を削除した。
rm /var/www/html/wp-content/plugins/hello.php