本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
WordPress.ORG から最新のWordPressをダウンロードして設定します。今回は日本語版WordPressを利用します。
こちらの文書では、日本語最新版をDebianに設定していきます。同じサーバで複数のWordPressサーバを構築する事も簡単です。
必要パッケージのインストールと準備
WordPress以外は、Debianのパッケージ管理に任せます。こうする事で、脆弱性が見つかった時などDebianコマンド apt-get update,upgradにて随時更新が可能です
apt-get install apache2 php5 curl mysql-server php5-mysql vi /etc/php5/apache/php.ini ; ... or under UNIX: extension=msql.so
日本語版のダウンロード
wget https://ja.wordpress.org/latest-ja.tar.gz tar -xzvf latest.tar.gz
cp ./wordpress/ /var/www/ mv wordpress/ wordpress01
日本語版をダウンロードし、/var/www内に設置します。複数ドメインで違うWordPressを開けるように名前等の設定も考えます。
データベースの準備
MySQLに設定するWordPress用のDBを準備します。これも分かりやすいように/var/www以下に配置したwordpressファイルと連携させると複数管理しやすいです。
vi wp01.sql CREATE DATABASE wordpress01; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER ON wordpress01.* TO wordpress01@localhost IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
cat wp01.sql | mysql --defaults-extra-file=/etc/mysql/debian.cnf
WordPressコンフィグファイルを準備
WordPressから、MySQLにアクセスできるようwp-config.phpを編集します。また、テーマやプラグインなどを直接ダウンロードできるよう設定を書き加えます。
/var/www/wordpress01# cp wp-config-sample.php wp-config.php /var/www/wordpress01# egrep -v '^\s*$' wp-config.php |egrep -v '^\s?\*' |egrep -v '^/' <?php /パスワードを合わせる define('DB_NAME', 'wordpress01'); define('DB_USER', 'wordpress01'); define('DB_PASSWORD', 'password'); define('DB_HOST', 'localhost'); define('DB_CHARSET', 'utf8'); define('DB_COLLATE', ''); define('AUTH_KEY', 'put your unique phrase here'); define('SECURE_AUTH_KEY', 'put your unique phrase here'); define('LOGGED_IN_KEY', 'put your unique phrase here'); define('NONCE_KEY', 'put your unique phrase here'); define('AUTH_SALT', 'put your unique phrase here'); define('SECURE_AUTH_SALT', 'put your unique phrase here'); define('LOGGED_IN_SALT', 'put your unique phrase here'); define('NONCE_SALT', 'put your unique phrase here'); $table_prefix = 'wp_'; define('WP_DEBUG', false); if ( !defined('ABSPATH') ) define('ABSPATH', dirname(__FILE__) . '/'); require_once(ABSPATH . 'wp-settings.php'); /以下付け加える(ftpを使わず直接ダウンロード) define('FS_METHOD', 'direct');
apache公開準備
指定のホスト名でアクセスがあった際に、指定のディレクトリにアクセスさせるように設定します。
ホスト名 technical.live-on.net
アクセス先ディレクトリ /var/www/wordpress01
vi /etc/apache2/sites-available/wordpress01.conf <VirtualHost *:80> ServerName technical.live-on.net ServerAdmin webmaster@localhost DocumentRoot /var/www/wordpress01 <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/wordpress01> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
a2ensite wordpress01 /etc/init.d/apache2 restart
wp-contentの権限を振りなおす
wp-contentがapacheから変更が加えられるようにアクセス権限を変更します
chmod 707 wp-settings.php chmod -R 707 wp-includes chmod -R 707 wp-admin chmod -R 777 wp-content/ chown -R www-data:www-data wp-content/
パーマリンクのためmod_rewriteを有効に
/var/www/wordpresss01# a2enmod rewrite Enabling module rewrite. To activate the new configuration, you need to run: service apache2 restart
/var/www/wordpress01/# vi .htaccess <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
WordPressインストールページを開く
https://www.techlive.tokyo/wp-admin/install.php
以上を複数回繰り返していけば、まったく独立したWordPressサーバを構築していけます
パーミッションの検討
結局更新時、パーミッションエラーで更新できない事があった。うーん、なんだかホームページの情報見てもなかなかいい情報にあたらない。結局、更新するためには、以下のようにしている。
#WordPrsssディレクトリ配下は全てwww-dataのオーナー・グループにする /var/www/life/cloud# chown -R www-data:www-data * #ディレクトリの権限 /var/www/life/cloud# chmod 775 -R wp-includes/ /var/www/life/cloud# chmod 775 -R wp-admin/ /var/www/life/cloud# chmod 777 -R wp-content/ #トップにあるファイル権限 /var/www/life/cloud# chmod 775 *