【動画】UbuntuにWordPressをインストール【コマンド付】

動画見ながらコピペで完成、Ubuntu DesktopにWordPressをインストールする方法を紹介します。解説&シェルコマンド付です。Xamppは未使用です。開発環境を作りたい場合にお勧めです。実作業時間は約30分、仮想環境(VM)対応です。
Welcome
  • DHCPから固定IPにしてホストからもアクセス可能に。(VMの場合)
  • XAMPP未使用、余計なものは入りません。
  • 繰り返せば、複数のWordPressの設置もOK!

デモ

約17分の動画です。Ubuntuの初期状態からWordPressの開発環境を作っています。12ステップありますので、必要なところをご覧ください。

動画

デスクトップでご覧の場合は、別窓で動画を開き、ページ後半の解説&コマンドをご覧いただくと便利です。

参考 How To Install WordPress On UbuntuYoutube
Excel

動画内で使用したExcelファイルは、こちらからダウンロードできます。

コマンド&解説

01. 地域の確認 [0:24]

画面右上のメニューから地域を変更します。(動画はUbuntuのインストール直後から解説しています。既に変更済でしたら次へ進んでください。)

02. DHCPから固定IPアドレスの変更 [0:36]

UbuntuではDHCPでは途中で接続が切れてしまう問題が発生します。また、長い期間開発をすることや外部からの接続の可能性を考えてもIPを固定させたほうが安定します。

03. パッケージファイルのアップデート[3:14]

お馴染みのコマンドです。WordPressのセットアップの前に必ず実行をお願いします。また、シェルコマンドでは英語のほうが扱いやすいため、ドキュメントやダウンロードなどの日本語フォルダーを変更したい場合は、オプションもお試しください。

# パッケージリストのアップデート
sudo apt-get update
sudo apt-get upgrade

# 【オプション】日本語フォルダ名を英語へ変更
LANG=C xdg-user-dirs-gtk-update

04. LAMPのインストール [4:15]

このデモではtaskselというコマンドでLAMPをインストールします。taskselはメジャーなシステムをインストールするときに利用されるコマンドですので、WordPress以外に携わる場合にも覚えておくと便利です。

# LAMPサーバーのインストール
sudo apt-get install tasksel
sudo tasksel install lamp-server
# mySQLのrootパスワードを決める
# Install後は、localhostで確認

# taskselで動作確認
sudo tasksel

05. PHPの更新 [6:00]

改めてPHPをインストールします。

sudo apt-get install php

06. MySQLの設定変更 [6:12]

ネットワークの設定の見直しと、文字化け防止のための設定変更をします。

sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf
# --- 以下をコメントアウト ---
#bind-address		= 127.0.0.1

# --- 以下を追加 ---
[client]
default-character-set = utf8
[mysqld]
character-set-server = utf8
[mysqldump]
default-character-set = utf8

設定後、文字コードが変更されているか確認をします。

sudo systemctl restart mysql
mysql -u root -p
#rootのパスワードでログイン
mysql> show variables like '%char%';

以下のように表示されたら、OKです。

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

07. WordPress用データベースの作成 [7:22]

MySQLにログインした状態で、そのままWordPress用のデータベースを作成します。

mysql> create database wordpress;
mysql> quit;

08. phpMyAdminのインストール [7:44]

必須ではありませんが、phpMyAdminもインストールします。データベースの内容を簡単に確認できるようになります。

sudo apt-get install phpmyadmin

インストール後は、WebブラウザからphpMyAdminが動いているか確認をお願いします。

09. curl経由のWordPressのダウンロード [8:51]

このデモではCurlというデータ転送方式で、WordPressをコマンドで実行するWp-Cliをダウンロードし、そのコマンドを利用してtmpフォルダーにWordPressの構成ファイルをダウンロードします。

# CURLとWP-Cliのインストール
sudo apt-get install curl
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar # 権限の変更
sudo mv wp-cli.phar /usr/local/bin/wp # Pathを通す
wp --info #実行確認

# WordPressのダウンロード
wp core download --locale=ja --path=/tmp/wordpress

# 英語の場合
wp core download --path=/tmp/wordpress

10. WordPressのインストール [10:32]

先ほどダウンロードしたWordPressの構成ファイルの権限などを調整して、Apacheサーバーにコピーします。

# コピー前準備
touch /tmp/wordpress/.htaccess
chmod 660 /tmp/wordpress/.htaccess
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
mkdir /tmp/wordpress/wp-content/upgrade

# ダウンロードしたファイルをapache上にコピー
sudo cp -a /tmp/wordpress/. /var/www/html/wordpress

# 権限の変更
sudo chmod g+w /var/www/html/wordpress/wp-content
sudo chmod -R g+w /var/www/html/wordpress/wp-content/themes
sudo chmod -R g+w /var/www/html/wordpress/wp-content/plugins
sudo chown -R sysadmin:www-data /var/www/html/wordpress

# Apache2の設定変更
sudo gedit /etc/apache2/apache2.conf

Apacheファイルには以下を追記します。

<Directory /var/www/htm/wordpress>
AllowOverride All
</Directory>

シェルに戻って、設定を反映させます。

# 設定の反映
sudo apache2ctl configtest
sudo a2enmod rewrite
sudo systemctl restart apache2

11. WordPressとMySQLの接続設定 [11:51]

WordPressとMYSQLを接続する設定を行います。

# 秘密鍵の設定
curl -s https://api.wordpress.org/secret-key/1.1/salt/
# 一時的にエディターなどにコピーしておきます。

# DBとの接続設定
sudo gedit /var/www/html/wordpress/wp-config.php
# ID、PW、DBと先ほどの秘密鍵をセットします。

# 設定ファイルの作成
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/010-wordpress.conf
sudo gedit /etc/apache2/sites-available/010-wordpress.conf
# DocumentRootを/var/www/html/wordpressに変更します。

# 再起動
sudo reboot

12. Web情報の登録 [15:02]

WebブラウザからWordPressにアクセスし、WordPressの設定を行っていきます。localhostをIPアドレスに書き換えれば、外部からのアクセスも可能になります。

まとめ

当初、WordPressの開発環境を構築する方法がわからず、とても苦労しました。XAMPPなどを利用する方法もありましたが、XAMPPでは中味がブラックボックスということもあり、クリーンな開発環境をつくる方法を模索した結果、この方法に落ち着きました。本番環境はレンタルサーバーのWordPressサービスを利用し、開発環境をPCで作りたい場合には、ピッタリな方法だと思います。