TechNote

事務屋のおぼえがき

Windows11のWSL2(Ubuntu)でPHP+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を起動する。スタートメニューから検索されることの確認も含めて。

PHPApacheのインストール

下記コマンドを実行する。これでPHPApacheの両方をインストールできる。

$ 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にアクセスして正常表示されることを確認。