LoginSignup
1
5

More than 5 years have passed since last update.

5分でwordpressをローカル環境に用意する

Posted at

前提 - 環境

  • Mac OSX 10.10.5
  • vagrant 1.8.5
  • VirtualBox 5.1.4
  • ゲストOS - centos6.8

※ vagrantでのcentos環境の構築は、以前の自分の記事を参考にしてください。

概要

  • wordpressをインストールし
  • 初期設定を行い
  • 5分でサイトを公開しよう

1. wordpressをインストールしてくる

公式からダウンロード出来るので、本体をDLしておきます。
(2016-08-24時点では、バージョンは4.6でした)

2. wordpress用のデータベースを作成する

wordpress用のDBが必要なので作っておきます

mysql> create database wordpress_test;
mysql> grant all on wordpress_test.* to wp_test_user@localhost identified by 'xxxx';

3. 1でダウンロードしてきたwordpress本体をドキュメントルート配下に配置する

$ cd ~/Download/wordpress/* ~/centos/src/

補足

※ 私の環境では、~/centosに、Vagrantfileが配置されてます。

Vagrant.configure("2") do |config|
  config.vm.box = "centos6.7"
  config.vm.provision :shell, :path => "provision.sh"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.synced_folder "./src/", "/var/www/html/"
end

※ ホストOSの~/centos/src/をゲストOSの/var/www/html/に共有しています。

4. wp-configを編集する

さて、先ほどドキュメントルートに配置した、~/centos/src/の中に、wp-config-sample.phpというファイルがありますので、こいつをコピーして、wp-config.phpを作ります。

$ cd ~/centos/src/
$ cp wp-config-sample.php wp-config.php
$ vi wp-config.php

編集するのは次の4箇所です

  • wordpress用のデータベース名
  • wordpress用のユーザ名
  • wordpress用のパスワード
  • 認証用ユニークキー

上の3つはこの辺にあります。

 27 // ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
 28 /** WordPress のためのデータベース名 */
 29 define('DB_NAME', 'wordpress_test');
 30
 31 /** MySQL データベースのユーザー名 */
 32 define('DB_USER', 'wp_test_user');
 33
 34 /** MySQL データベースのパスワード */
 35 define('DB_PASSWORD', 'xxx');

最後の、認証用ユニークキーというのは、wp-configにこのような記載があるので、
指示通りに行います。

 46 /**#@+
 47  * 認証用ユニークキー
 48  *
 49  * それぞれを異なるユニーク (一意) な文字列に変更してください。
 50  * {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で>    自動生成することもできます。
 51  * 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザ>    ーを強制的に再ログインさせることになります。
 52  *
 53  * @since 2.6.0
 54  */

ということなので、 https://api.wordpress.org/secret-key/1.1/salt/ にアクセスしてみます。
すると、なんかランダムな文字列が生成されているので、それを全選択>コピーします。

そして、wp-configの認証用ユニークキーの下の部分にすべてペーストで上書きしちゃいます。

 55 define('AUTH_KEY',         '5kN_DjG8/M9db|1IhAz*&gWT8$)CfX`g#GpF-@EgPUh&^>_p1?$s0E?pbu3)Myc!    ');
 56 define('SECURE_AUTH_KEY',  '-l5|r+n`^@7OuZ*H58m%UubRK-(m%]&okof]-.YtgN-O;2g7A}@&T$_D:~HZWLbC    ');
 57 define('LOGGED_IN_KEY',    '-m*wqGjIoH;}zK=ky&s:@JfWH4@Z3+awc6D[Rfx4PE2l(A-h+Me5@3$z[1-|Rz-W    ');
 58 define('NONCE_KEY',        '+Pr g3t&0i#HT[bu<z0N6 LJjs!}P@Bj.$!rqwv27{/F^lo8xaHNf:G:C<R?$O^-    ');
 59 define('AUTH_SALT',        '3u&_2P(&+|?J70hchy|sI<0:xl9h0eu(3z7wY%`*^E?*<g[p{cm=b6*/wB:J8(77    ');
 60 define('SECURE_AUTH_SALT', 'yB@#M4iY$<lp_%_jM^?EenmZ-~Rv2hk`; )76+N%Q6&vT=e1mS|n t+))O6*4Es(    ');
 61 define('LOGGED_IN_SALT',   'q_Gg&RrvMQM+b+y0R_~FsW(3Rj/|-!4zu}0XKoR$-m.9@^5QLs.e<N^%[D-=+0pW    ');
 62 define('NONCE_SALT',       't2|$-*At8Z|!@/{4IMh*)`93RVlj*sQF&p~9+6FA=h6k-~F/EYhrD*i-?[^qoOB]    ');

こんな感じですね。

5. ブラウザから初期設定を行う

ブラウザで、192.168.33.10にアクセスします。
おそらく下のような画面が表示されると思います。

スクリーンショット 2016-08-25 08.16.20.png

データベース確立エラーが起きてしまったら・・・?

  • wp-configの、データベースの設定に誤りがないか見直しましょう
  • 実際にmysql -u [ユーザ名] -p[パスワード] [テーブル名]でログイン出来るか
  • mysqlが実際に稼働しているか、sudo service mysqld status で動いてるか確認しましょう
    • 起動してない場合は、sudo service mysqld restartで再起動しておきましょう

初期設定

ここで、サイトのタイトルやユーザ名、メールアドレスを登録して、wordpressをインストールすれば完了です。
次に出てくるログイン画面で、実際にログイン出来るか確認してみましょう。
ログインに成功すると、↓のようなダッシュボードが表示されるはずです。

スクリーンショット 2016-08-25 08.19.08.png

6. パーマリンクの設定

wordpressで投稿した記事のURLは、デフォルトでは記事のidっぽくなっていますので、
それを日付記事の内容に合わせた文字列に変更することが出来ます。
これは簡単なのでやっておきましょう。

ダッシュボードの左側のメニューから、パーマリンク設定をクリック

スクリーンショット 2016-08-25 08.24.46.png

デフォルトで、基本になっているので、日付と投稿名などに変えてみます。

スクリーンショット 2016-08-25 08.28.45.png

この状態で、変更を保存すると、画面下の方に、

.htaccess が書き込み可能ならこの操作は自動的に行われますが、そうでない場合は .htaccess ファイルに mod_rewrite ルールを書き込む必要があります。以下のフィールドをクリックし、CTRL + a ですべてのコードを選択してください。

という指示があります。
ドキュメントルートにapacheが書き込める権限があれば自動的に.htaccessが作られるんだと思いますが、
作成されてなければ自分で作ってしまいましょう。

$ vi /var/www/html/.htaccess

内容は、ダッシュボード上にある文字列のコピペでOKです。

もし、パーマリンク設定して、404に遭遇したら・・

順番に疑ってみます

  • mod_rewriteが有効になってない
    • /etc/httpd/conf/httpd.confで、190 LoadModule rewrite_module modules/mod_rewrite.soの行の先頭が#でコメントアウトされている場合
    • #を消して上書き > sudo service httpd restart
  • .htaccessが使えない
    • /etc/httpd/conf/httpd.confの、<Directory "/var/www/html">の項目を見てみましょう
    • AllowOverride None になっていませんか?
    • その場合は、AllowOverride Allにして上書き> sudo service httpd restart

これで記事投稿・パーマリンク設定まで出来ました。

1
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
5