このサイトの自宅WEBサーバーをDebian 9 Stretchにしました。今回は、新規インストールしたDebian Stretch+Nginx+PHP7.0+MariaDBのLAMP環境にWordPress4.8を新規インストールする手順です。
WordPress Codex日本語版のWordPressのインストールのいろいろなケースでのインストール手順を元に、私が新規インストールする場合に行う手順を書き出した内容です。
このページの目次
前提
こちらの記事の通りに新規インストールしたWEBサーバーでの手順です。
Debian 9 StretchでNginx+PHP7.0+MariaDBをインストール
いまどきなら、最初からSSLサイト前提でも良いかもしれません。
letsencrypt利用 Debian 9 StretchのNginxをSSL(http2)サイト化
ダウンロードと設置
wgetコマンドで最新WordPress日本語版をダウンロードして展開します。ダウンロードするディレクトリに移動しておきます。(ユーザーのホームディレクトリなど)
$ wget https://ja.wordpress.org/latest-ja.tar.gz $ tar -xzvf latest-ja.tar.gz
WordPressオリジナル版の場合はこちら(日本語版との違いは公式をご覧ください)
$ wget http://wordpress.org/latest.tar.gz $ tar -xzvf latest.tar.gz
展開されたwordpress ディレクトリの中身をすべて、Nginxの初期公開ディレクトリ/usr/share/nginx/html に設置します。
# cd wordpress # cp -R * /usr/share/nginx/html/
公開ディレクトリに丸ごと所有者をnginxに変更します。
# chown -R nginx:nginx /usr/share/nginx/html
WordPress用データベース作成
MariaDBにWordPress用データベースを作成します。今回の環境では、phpmyadminにrootでログインできないのでSQLコマンドを利用します。
こちらの設定で作成した例です。
- WordPress のためのデータベース名: wp_database
- MySQL データベースのユーザー名: wp_user
- MySQL データベースのパスワード: password
- MySQL のホスト名: localhost
今回の環境では、データベース名に– ハイフンが使えませんでした。_ は使えました。
# mysql -u root MariaDB [(none)]> use mysql MariaDB [mysql]> CREATE DATABASE wp_database; MariaDB [mysql]> GRANT ALL PRIVILEGES ON wp_database.* TO "wp_user"@"localhost" IDENTIFIED BY "password"; MariaDB [mysql]> FLUSH PRIVILEGES; MariaDB [mysql]> exit
インストールスクリプトの実行
ブラウザーからhttp:// [site-url] /wp-admin/install.php と入力してインストールスクリプトを実行します。wp-config.phpが存在していないので、wp-config.phpの自動作成スクリプトも始まります。
ここで作成したユーザー名とパスワードが、WordPressの管理者となるので忘れないようにメモしておきます。
動作確認
インストールが完了したら、http:// [site-url] /wp-admin で管理画面にログインできたら、新規インストール作業の完了です。
注意点いくつか
最後に、よくある注意点をいくつかご紹介します。私がいつも忘れて慌ててしまうポイントです。
wp-config.phpファイルに書き込むことができません
WordPressのインストールスクリプトで「wp-config.phpファイルに書き込むことができません」のエラーが出る場合です。これは、公開ディレクトリの所有者をnginx:nginx にすることで改善しました。(Debian Apacheの場合はwww-data:www-data )公開ディレクトリの中身だけではなく、ディレクトリ自体を変更する必要がありました。
〇正しくは
# chown -R nginx:nginx /usr/share/nginx/html
×これは間違い
# chown -R nginx:nginx /usr/share/nginx/html/*
WordPressの自動更新ができない
WordPressの自動更新や、プラグインのアップデート、メディアのアップロードなどの操作をしようとすると、FTPのログイン画面が出て操作できない場合です。
これも上記と同じく公開ディレクトリの所有者を変更すれば直りました。
パーマリンクの設定を変えると404エラー
WordPressの管理画面でパーマリンクの設定を標準のものから変更すると、404エラーが出てサイトが表示されなくなる場合です。
Nginxの場合は、/etc/nginx/conf.d/default.conf もしくは同じディレクトリ内の該当ファイルのserver { } 内に下記を追加します。
location / { try_files $uri $uri/ /index.php?q=$uri&$args; }
WordPressの画面が出ない
Wordpressのインストールが完了したのに、WordPressサイト以外のページが表示されたり、管理画面へのログイン画面が出ない場合です。
これは、WordPressの公開ディレクトリにindex.html やindex.htm ファイルが存在したままになっていれば取り除きます。