linux:wordpress-install-on-debian

DebianにWordpressをインストール

VirtualBoxにインストールしたDebianマシンにWordpressをインストールするメモ。

VirtualBoxは設定でゲストマシンの80ポートを8080ポートにポートフォワーディングしているので、ゲストマシンのWebにアクセスするにはhttp://localhost:8080/にアクセスすると見えるように設定している。

Wordprssをインストールするにあたり

  • WordpressはDebianパッケージを使う
  • なるべくコマンドを使わない
  • 開発用に最速でセットアップできることを目指す。(したがってセキュリティ的にはよわよわ)

/etc/hosts(またはC:\WINDOWS\system32\drivers\etc\hosts)にWordpressのサブドメインを割り当てる。

VirtualBoxの仮想マシンにアクセスはポートフォワーディングをしているのでlocalhostにアクセスしますが、localhostはいろいろ使うのでぶつからないようにサブドメインwpを設定します。

/etc/hostsに以下のように書いておく。

127.0.0.1 wp wp.localhost

Windowsの場合はC:\WINDOWS\system32\drivers\etc\hostsに書きます。

127.0.0.1 wp.localhost

これでwp.localhostが使えるようになりました。

Wordpressインストール

# apt-get install wordpress mysql-server
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
  apache2-mpm-prefork apache2-utils apache2.2-common javascript-common libaio1 libapache2-mod-php5 libdbd-mysql-perl libdbi-perl libhtml-template-perl
  libjs-cropper libjs-prototype libjs-scriptaculous libnet-daemon-perl libonig2 libphp-phpmailer libphp-snoopy libplrpc-perl libqdbm14 mysql-client-5.5
  mysql-server-5.5 mysql-server-core-5.5 php5 php5-cli php5-common php5-gd php5-mysql tinymce wordpress-l10n wwwconfig-common
提案パッケージ:
  apache2-doc apache2-suexec apache2-suexec-custom apache2 httpd php-pear libipc-sharedcache-perl curl libterm-readkey-perl tinyca mysql-client
  postgresql-client
以下のパッケージが新たにインストールされます:
  apache2-mpm-prefork apache2-utils apache2.2-common javascript-common libaio1 libapache2-mod-php5 libdbd-mysql-perl libdbi-perl libhtml-template-perl
  libjs-cropper libjs-prototype libjs-scriptaculous libnet-daemon-perl libonig2 libphp-phpmailer libphp-snoopy libplrpc-perl libqdbm14 mysql-client-5.5
  mysql-server mysql-server-5.5 mysql-server-core-5.5 php5 php5-cli php5-common php5-gd php5-mysql tinymce wordpress wordpress-l10n wwwconfig-common
アップグレード: 0 個、新規インストール: 31 個、削除: 0 個、保留: 1 個。
44.7 MB のアーカイブを取得する必要があります。
この操作後に追加で 145 MB のディスク容量が消費されます。
続行しますか [Y/n]?

MySQLのrootユーザーパスワードを設定

mysql-server-5.5 を設定しています

強制ではありませんが、MySQL を管理する "root" ユーザのパスワードを設定することを強くお勧めします。
この値を空のままにしておいた場合は、パスワードは変更されません。
MySQL の "root" ユーザに対する新しいパスワード:
___________________________________________________________________________________________________
<了解>

rootパスワードの確認

mysql-server-5.5 を設定しています
MySQL の "root" ユーザに対する新しいパスワード: 
________________________________________________
<了解>

ホストマシンからゲストマシンのWebにアクセスしてインストールできることを確認

ブラウザで http://localhost:8080/ にアクセスして、

It works!

This is the default web page for this server.
The web server software is running but no content has been added, yet.

と表示されればOK

ドキュメントを確認

# cd /usr/share/doc/wordpress/
# ls
NEWS.Debian.gz  README.Debian  changelog.Debian.gz  copyright  examples

# lv README.Debian

Debianパッケージでの変更点が書いてあるので、流し読みでよいので読む。 確認したら設定の続きに入ります。

まずはWordpress用のデータベースを作成。

# cd examples/
# ls
apache.conf  setup-mysql.gz

# gunzip setup-mysql.gz
# bash ./setup-mysql
./setup-mysql [-h | -d | -b] [-n NAME | -e DB Name] [-u MySQL user] [-t MySQL host] FQDN

Creates by default a Wordpress mysql configuration depending on required fully
qualified domain name(FQDN).

Options:
    -n name for the wordpress site; see also -e below
    -h help
    -d destroy and purge
    -b backup
    -u mysql username, will require password
    -t mysql server hostname, if unset localhost will be used
    -e existing empty mysql database name; will replace -n

Example: You want your blog to be served from http://blog.example.com
         for user 'wordpress'.

Then run:
sudo bash setup-mysql -n wordpress blog.example.com

BUGS: See ../TODO.Debian

ひとまずwordpressというユーザーで、localhostにアクセスするデータベースを作ります。 (削除するときはbash ./setup-mysql -d wordpressとすればOK)

# bash ./setup-mysql -n wordpress localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_req=1 ttl=64 time=0.041 ms

--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.041/0.041/0.041/0.000 ms
/etc/wordpress/config-localhost.php written
Trying to create wp-content directory: /srv/www/wp-content/localhost
Setting up permissions
Goto http://localhost to setup Wordpress

データベースができたのでApacheの設定をします。 apacheの設定はapache.confに書いてあるので読みます。

# lv apache.conf

Apacheの名前ベースのバーチャルホストを使って設定します。 apache.confのサンプルをコピーして、/etc/apache2/sites-available/にApacheの設定localhostというファイルを作成してペーストします。

# vi /etc/apache2/sites-available/localhost

コピーしたらServerName localhostという行を追加します。

## Virtual host VirtualDocumentRoot

        NameVirtualHost *:80

        <VirtualHost *:80>
        ServerName localhost ← この行追加!
        UseCanonicalName Off
        VirtualDocumentRoot /usr/share/wordpress
        Options All

        # wp-content in /srv/www/wp-content/$0
        RewriteEngine On
        RewriteRule ^/wp-content/(.*)$ /srv/www/wp-content/%{HTTP_HOST}/$1
        </VirtualHost>

サイトの設定をコピペしたら、a2ensiteコマンドを実行してサイト設定を有効にします。

# a2ensite localhost
Enabling site localhost.
To activate the new configuration, you need to run:
  service apache2 reload
<code>

Apacheを再起動するように言われますが、apache.confに書いてあったWordpressに必要なApacheモジュールの設定をしてからApacheを再起動します。
実行するコマンドはapache.confに書いてあるので、ターミナルにコピペすればOKです。

<code>
# a2enmod rewrite && a2enmod vhost_alias && /etc/init.d/apache2 restart
Enabling module rewrite.
To activate the new configuration, you need to run:
  service apache2 restart
Enabling module vhost_alias.
To activate the new configuration, you need to run:
  service apache2 restart
Restarting web server: apache2apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[Sat Jul 28 17:42:31 2012] [warn] NameVirtualHost *:80 has no VirtualHosts
 ... waiting .apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
[Sat Jul 28 17:42:33 2012] [warn] NameVirtualHost *:80 has no VirtualHosts
.

これでApacheの設定は終わりました。

Wordpressの設定

/usr/share/doc/wordpressにあるREADME.Debianに書いてあったようにWordpressの設定ファイは/etc/wordpressにconfig-(ホスト名).phpという名前で置いてあります。 日本語の設定を追加します。

# cd /etc/wordpress/
# ls
config-localhost.php  htaccess
# vi config-localhost.php
<?php
# Created by ./setup-mysql
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'M0MmWOtQ');
define('DB_HOST', 'localhost');
define('SECRET_KEY', 'KJIqGCVXVY01ssVvocKvoeYABdirAQjsizrEhYu956');
define('WP_CONTENT_DIR', '/srv/www/wp-content/localhost');
define('WPLANG', 'ja'); ←この行を追加!
?>
  • linux/wordpress-install-on-debian.txt
  • 最終更新: 2012/07/28 17:58
  • by nogajun