Windows11のWSL2(Ubuntu)でPHP+Apache環境構築
- WSL2(Ubuntu含む)をインストール
- Ubuntuのアップデート(apt updateとapt upgrade)と日本語環境設定
- PHPとApacheのインストール
- Apacheのドキュメントルートの確認とパーミッション変更
- 動作確認
WSL2(Ubuntu含む)をインストール
まずはWSL2のインストールから。PowerShellを管理者として実行し、下記コマンドを入力する。
wsl --install
途中でいったん再起動が求められ、再起動後、自動的に続きが再開される。
インストールが完了するとユーザーとパスワードの設定が求められるので入力する。
Ubuntuのアップデート(apt updateとapt upgrade)と日本語環境設定
Ubuntuを最新版にしておくために、下記コマンド。コマンド実行後にパスワードの入力を求められるので先ほど設定したパスワードを入力。
$ sudo apt update && sudo apt upgrade
アップデートに数分程度かかる。
ついでに日本語環境設定もしておく。下記を順番に実行。1行目はタイムゾーンの設定。2行目からは言語設定。
$ sudo dpkg-reconfigure tzdata
$ sudo apt install locales
$ sudo apt install -y language-pack-ja
$ sudo update-locale LANG=ja_JP.UTF-8
1行目の実行時に出てくる下記画面ではAsia⇒Tokyoを選択。
日本語化を反映させるために一旦Ubuntuの画面を終了し、再度Ubuntuを起動する。スタートメニューから検索されることの確認も含めて。
PHPとApacheのインストール
下記コマンドを実行する。これでPHPとApacheの両方をインストールできる。
$ sudo apt install php
きちんとPHPがインストールできたか確認。
$ php -v
$ apache2 -v
念のためブラウザでhttp://localhost/にアクセスしてApache2がworkしていることを確認。
Apacheのドキュメントルートの確認とパーミッション変更
Windowsのフォルダエクスプローラ上からWSLファイルシステムを見るにはフォルダエクスプローラのアドレスバーに下記を打つ。
\\wsl$
そしてApacheのデフォルトドキュメントルートは/var/www/htmlに設定されているのでそこを見てみる。現状index.htmlが一つだけある。ここにファイルを追加するにはまずパーミッションの変更が必要。
このため下記コマンドを実行して、/var/www/htmlのパーミッションを変更する。
$ cd /var/www/html
$ sudo chown -R [username] /var/www/html
これで、Ubuntuのデフォルトユーザーで/var/www/html内を自由に編集できる。
動作確認
最後に下記のような内容のファイルを置いてみる。
<?php
echo "Hello,World!";
ブラウザでhttp://localhost/hello.phpにアクセスして正常表示されることを確認。