WordPress

MacでWordPressをローカルインストールする(MAMPなし, phpmyadminなし)

More than 1 year has passed since last update.


条件


  • macを使う

  • MAMP使わない

  • phpmyadmin使わない

  • 基本ターミナルで操作する

私は毎日、代わり映えのない生活をしていますが、このまま一生砂糖水を売り続けるのは嫌だったので、macを買ってWEB開発のスキルを身につけようと思いました。

勉強のためにまずwordpressを使ってみます。

macにはデフォルトでapacheとphpが入っているらしいので、MAMPやphpmyadminは使わずにやってみました。

操作はできるだけターミナルで行います。


apache

デフォルトでインストールされていました。

何だか知らんが、とにかくよし!

…というわけにはいきませんでした。やったことは、


  • apacheの設定を変更する


    • ドキュメントルートを扱いやすい場所に変更する(~/workspace)

    • .htaccess を使えるようにする

    • PHP を有効にする



  • apacheを起動する


apacheの設定を変更する

apacheが参照するデフォルトのドキュメントルートは

/Library/WebServer/Documents

と長いので、簡単にアクセスできるように変更しました。

別に必須ではないですが、以後の説明はこの変更をした上で説明します。

「.htaccess」「PHP」も有効にしておきます。

これらはこちらのページの手順を実行させていただきました。

ここでは詳細は省きますので、リンク先を参照して実行してください。


apacheを起動する

apacheを起動します。もう起動してる場合は再起動してください。

ターミナルで行います。

# apacheを起動する

$ sudo apachectl start

# apacheを終了する
$ sudo apachectl stop

# apacheを再起動する
$ sudo apachectl restart


mysql

デフォルトでインストールされていませんでした。

何でだ!

やったことは、


  • Homebrewインストール

  • mysqlインストール

  • mysqlサーバ起動

  • mysqlユーザ、データベース作成


Homebrewインストール

mysqlはHomebrewからインストールしようと思います。

なのでまずHomebrewをインストールします。念のため更新もします。

ターミナルで行います。

# rubyからHomebrewをインストール

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

# 念のため Homebrew を更新
$ brew update

これらはこちらのページを参考にさせていただきました。

Rubyもデフォルトでインストールされていますね。いいね!


mysqlインストール、サーバ起動

mysqlをHomebrewからインストールします。

インストールは簡単ですが、インストールで出来たフォルダの権限を変更しないと実行できませんでした。

インストールしたらmysqlサーバを起動して確認します。

ターミナルで行います。

# Homebrewからmysqlインストール

$ brew install mysql

# mysqlフォルダの権限を変更
$ chown -R _mysql:_mysql /usr/local/var/mysql

# mysqlサーバ起動
$ sudo mysql.server start

# mysqlサーバが動いてるか確認
$ mysqladmin ping


mysqlユーザ、データベース作成

mysqlを操作してユーザとデータベースを作成します。

ここではユーザ名を「vegeta」、データベース名を「supersaiyan」、パスワードを「bargainsale」としていますが、用途に応じて必ず変更してください。

ついでにmysql.sockの場所も確認しておきます。あとで使います。

ターミナルで行います。

# mysqlの操作を開始する

$ mysql -u root -p

# mysqlのルート権限のパスワード入力(デフォルトは空白)
Enter password:

# ユーザ作成
mysql> create user 'vegeta'@'localhost' identified by 'bargainsale';

# データベース作成
mysql> create database supersaiyan;

# ユーザにデータベース操作の権限追加
mysql> grant all privileges on supersaiyan.* to 'vegeta'@'localhost';

# データベース一覧で作ったデータベースがあるか確認する
mysql> show databases;

# ユーザ一覧で作ったユーザがあるか確認する
mysql> select host, user, password from mysql.user;

# ついでにmysql.sockの場所を確認しておく
mysql> status
--------------
mysql Ver 14.14 Distrib 5.6.23, for osx10.10 (x86_64) using
 :
UNIX socket: /tmp/mysql.sock <- これを覚えておく

# mysqlの操作を終了する
mysql> quit

これらはこちらのページを参考にさせていただきました。


php

デフォルトでインストールされていました。

何だか知らんが、とにかくよし!

…というわけにはいきませんでした。やったことは、


  • php.iniを作成

  • php.ini内のmysqlソケットファイルパスを変更

これらはこちらのページを参考にさせていただきました。


php.iniを作成

php.iniがなかったので作ります。アクセス権も変えます。

ターミナルで行います。

#php.ini.defaultをコピーしてphp.ini作成

$ sudo cp /etc/php.ini.default /etc/php.ini

#ファイルのアクセス権を設定
$ sudo chmod 644 /etc/php.ini

私の環境では /etc にありましたが、あなたの環境では違うかもしれません。

もしファイルがなければファイル検索で探してみましょう。

# php.ini.defaultのある場所を検索する

$ sudo find / -name "php.ini.default"


php.ini内のmysqlのソケットファイルのパスを変更

phpとmysqlはソケット通信でやりとりするらしいので、ソケットファイルのパスを指定する必要があるらしいです。(よくわかりまテン!)

php.ini内の該当項目を変更します。(デフォルトは空白でした。)

先ほどmysqlデータベース作成時についでに確認したパスを入力します。

エディタで行います。

mysql.default_socket = /tmp/mysql.sock


Wordpress

Wordpressはデフォルトでインストールされていませんでした。

そりゃそうだ。

やったことは


  • Wordpressダウンロード、移動、解凍

  • Wordpressインストール

これらはこちらのページを参考にさせていただきました。


Wordpressダウンロード、移動、解凍

まずこちらのページからワードプレスのファイルをダウンロードします。

ブラウザで行います。

できますか?大丈夫?

ダウンロードしたファイルはダウンロードディレクトリに入っているので、最初に設定したドキュメントルートへ移動して解凍します。

解凍したディレクトリの中にwp-config-sample.phpというファイルがあるので、wp-config.phpという名前でコピーします。

ターミナルで行います。

# ダウンロードしたファイルをドキュメントルートディレクトリへ移動

$ mv ~/Downloads/wordpress-4.1.1-ja.zip ~/workspace

# ドキュメントルートディレクトリへ移動
$ cd ~/workspace

# ダウンロードしたガイルを解凍
$ unzip wordpress-4.1.1-ja.zip

# 作成したワードプレスディレクトリへソニックブーム!
$ cd wordpress

# wp-config-sampleをコピーしてwp-configファイル作成
$ cp wp-config-sample.php wp-config.php


Wordpressインストール

こちらにアクセスするとインストール画面が出ます。

mysqlに設定したデータベース名、ユーザ名、パスワードを入力してください。

私が先ほど作成した例で言うと、


  • データベース名:supersaiyan

  • ユーザ名:vegeta

  • パスワード:bargainsale

  • データベースのホスト:localhost

  • テーブル接頭辞:wp_

になります。あとは画面に従って設定してください。


終わりに

どうですか?動きましたか?


動かないよ!

え?動かない?そうでしょう、そうでしょう!

私もググっては動かず、ググっては動かずの日々でした。

動かない理由としては以下が考えられます。


  • データベース名、ユーザ名、パスワードが間違っている


    • 間違っていても意外と気がつかないので注意しましょう



  • apache、mysqlが動いていない


    • 確認コマンドで起動しているか確認しましょう



  • 権限が与えられていない


    • ディレクトリの権限は $ ls -al /usr/local/var などで調べましょう

    • 権限が必要な操作は管理者権限(su)で実行しましょう



  • 設定ファイルのパスが違う


    • 見つからないファイルは $ sudo find / -name "mysql.sock" などで検索しましょう



  • Windowsでやっている


    • あーそれは、他をあたってください…



  • 時代が違う


    • もしやあなたは2020年にこのページを参照していませんか?



  • 記事が間違っている


    • え!そんなバカな!



なんかちょっとでも違うと動かないんですよね。根気強く頑張りましょうb