自分で Windows のローカル環境で WordPress を動かすまでのメモです。元々は XAMPP を使ってましたが、Windows で簡単に Ubuntu が導入できるということで、せっかくだからそこに環境を作ろうと思ったのが始まりです。
色々なサイトを参考にしていましたが、こちらの方の記事が非常に分かりやすかったので最初に貼っておきます。
Ubuntu 18.04 に WordPress 5.1 をインストール
Ubuntu のインストールと設定
まずは、Microsoft Store から Ubuntu 18.04 LTS をダウンロードしてください。ダウンロードしたら先へ進んでくだ さい。
Windows Subsystem for Linux を有効化する
有効化してない状態で Ubuntu を起動しようとすると下記のエラーが起きます。
Installing, this may take a few minutes… WslRegisterDistribution failed with error: 0x8007019e The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again. See https://aka.ms/wslinstall for details. Press any key to continue…
アプリと機能 > プログラムと機能 > Windowsの機能の有効化または無効化 から、 Windows Subsystem for Linux を探してチェックを付けてください。その後で Ubuntu を起動してください。
リポジトリの変更
そのままだと海外サーバーのリポジトリを参照してしまうらしいので、日本のリポジトリに変更します。
sudo sed -i -e 's%http://.*.ubuntu.com%http://ftp.jaist.ac.jp/pub/Linux%g' /etc/apt/sources.list
パッケージアップデート
sudo apt update
sudo apt upgrade
root パスワードを変更する
sudo su -
passwd
sudo su -
で現在のログインパスワードを聞かれた時はパスワードを入力して root になります。その後passwd
コマンドでパスワードを設定する。
Apache2 を導入する
ウェブサーバーである Apache2 を導入します。CentOS では Apache ですが、ubuntu では Apache2 というものになるらしい…
インストール
apt-get install apache2
この時、下記のエラーが出るときは root になる必要があるので、su コマンドで root 権限になった後にコマンドを実行してください。
E: Could not open lock file /var/lib/dpkg/lock-frontend – open (13: Permission denied) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
各種設定
サーバーネームを指定する
/etc/apache2/apache2.conf
ServerName yourServerName
サーバーの名前を設定します。デフォルトでは設定が書かれていないので追記します。名前は何でもいいようです。
VirtualHostの設定
/etc/apache2/sites-available/000-default.conf
DocumentRoot /var/www/html
とりあえず、/var/www/htmlをドキュメントルートとして設定しておきます。
シンボリックリンクを作成
/var/www/html
にファイルを置いて確認するのは面倒なので、Windowsのフォルダの方を見るようにシンボリックリンクを張ります。/mnt/c/
がCドライブの中になっているので、今回は/var/www/html
に/mnt/c/Users/your-user/Documents/webroot/
にリンクを張り、こちらにファイルを置くだけでlocalhost/
からアクセスできるようにします。
ln -s /mnt/c/Users/<あたなのユーザー名でございます>/Documents/<ウェブルートにするディレクトリだぞ>/ /var/www/html
<>のところは自分の環境に合わせてください。<ウェブルート>/index.html
を作成すれば、localhost/
でアクセスしたときに表示されます。これでとりあえず静的サイトのテスト環境が作れました。
apache2 の起動
/etc/init.d/apache2 restart
MySQL を導入する
WordPress を設置するため、MySQL もインストールします。
インストール
sudo apt install mysql-server mysql-client
起動
service mysql start
root パスワードの設定
MySQL にログインするための root 初期パスワードを設定します。
sudo mysql_secure_installation
データベースの作成
とりあえずデータベースを作成しておきましょう。
mysql -u root
mysql > CREATE DATABASE <任意のデータベースの名前を入れるんやぞ>;
データベースユーザーを作成
grant all on <データベース名>.* to <ユーザー名@localhost> identified by '<パスワード>'; MariaDB [(none)]> flush privileges;
<>は任意!
PHP 7.2 を導入する
インストール
sudo apt install php7.2 libapache2-mod-php7.2
service apache2 restart
PHP をインストールした後に、apache2 を再起動してください。
WordPress を導入する
まずは公式サイトから WordPress の本体をダウンロードしてきます。そして先ほどドキュメントルートとして設定したフォルダに移し、localhost/wordpress/wp-admin
にアクセスしてインストールを開始します。
mod_rewrite を有効化する
WordPress では .htaccess のリダイレクトを有効にしなくてはならないため、mod_rewrite を有効にします。
sudo /usr/sbin/a2enmod rewrite
さらに、.htaccess を使用できるようにするため、AllowOverrideをAllに設定します。Noneになっていると、.htaccess で上書きできなくなってしまいます。
/etc/apache2/apache2.conf
<Directory /var/www/html>
Options Indexes FollowSymLinks
# AllowOverride None
AllowOverride All
Require all granted
</Directory>
最後に、apache2 を再起動しましょう。
service apache2 restart
ここまで出来たら、WordPress のパーマリンクの設定を更新して記事を投稿してみましょう。
参考:
https://qiita.com/Aruneko/items/c79810b0b015bebf30bb
https://qiita.com/shita_fontaine/items/40a086265f0cf07d10e0