mazeltov7のweb断片

備忘録的なテキトーなことを書きます。(技術記事はQiitaに移行しました http://qiita.com/mazeltov7 )

WordPressのローカル環境設定

WPで運用してるサイトのローカル環境を作る過程のメモです。

macの標準で入ってるApacheで動かすので、どこらへんにいるか見に行ってみた。

$ less /etc/apache2/httpd.conf

ここをみるに、/Library/WebServer/Documentsがドキュメントルート。 ここにindex.htmlとかいる。

ちなみに、apacheを動かすには、

# 起動
$ sudo apachectl start
# 停止
$ sudo apachectl stop
# 再起動
$ sudo apachectl restart

で、このドキュメントルートにwordpressのコードたちをダウンロードしてもってくる。 で、http:///localhost/解凍したフォルダ名(デフォはwordpress。このままでもおk)みれる。

見るとDBとか設定必要とか言われるので、mysqlの設定をする。 mysqlでユーザー作成して、データベース作って、作ったユーザーにそのデータベースの権限与える。 ユーザーは作ってたので、DB作って、権限与える。

# rootで入る
$ mysql -u root 
# DB作る
$ create database hoge;
# wpuserにhogeの権限与える
$ grant all privileges on hoge.* to wpuser@localhost identified by 'hogehoge';

これを終えたら再度’http:///localhost/解凍したフォルダ名’へアクセス。基本画面でてきて、DBの設定入れる感じ。 が、この設定でなぜかうまくいかない(あとで、わかったのは、データベースを'localhost'にしてるとアウトぽい。いけるてかいとるやんけ!こら!'127.0.0.1'でいける) この時はhoge!?っとなったので、直接wp-config-sample.phpをコピーして、wp-config.phpに書いた(ここでも'localhost'って書いてアウトだった) 何はともあれ、設定して、'http:///localhost/解凍したフォルダ名'へアクセス。 すると、ユーザー設定画面出てきて入れてく。 で、ログインできたらおk

ここまで参考:WordPressをローカル環境にインストール(Mac OS X)

こっから、すでにあるプロジェクト(コード)をgithubから引っ張ってきてローカルで表示させるところまでやる。 themeで作ってたので、そこにgit cloneしたやつを打ち込む。 で、ログインして、GUIでテーマを作ってたやつに設定して、表示できたらおk!

サイト内でリンクがある場合に、うまくアクセスできないという問題が発生 原因はapachehttpd.confのUserとGroupがデフォルトの_wwwのままで、これを自分のmacのネームに変えたら解決(groupは$ groupsして、staffでとりあえずやってdone) これで、wordpress内のコンテンツにアクセスできるようになり、wordpressのルートに.htaccessが作られる。

その他注意点
* /company, /recruit, /contact などは固定ページとして管理画面から追加する必要がある
* 中身はなしで、適切なテンプレートの選択と適切なパーマリンクを設定する必要がある
* カスタムパーマリンクを設定するためには .htaccessが有効になっている必要がある(AllowOverride All in httpd.conf)
* .htaccessをWPが作成できるように、ディレクトリとファイルはapacheプロセスのユーザーと同じか書き込みができるようにパーミション設定する必要がある
* httpd.confを変更したら、sudo apachectl restart or reload しないと反映されない
* 設定変更後、プロセスがうまく起動しない時は設定ファイルにエラーがある → sudo apachectl configtest でエラー内容を確認できる
** もしくは ログを見ればわかる。