WSL と Windows Terminalと Apache と PHP
Back
Alt+HOME
HTMLでWEBを書く時はブラウザを指定して置けばエディタから起動してプレビューすることが簡単にできます。 但しここにPHPが絡んでくるとプレビューするだけでWEB開発マシンにWEBサーバ環境が必要になります。 Windows用のhttpdとphpをインストールする方法も有るようなのですが、折角64ビットWindowsにはWSL(Windows Subsystem for Linux)と言う環境が有りますので、レンタルサーバと同様の環境を構成し確認した上で、ローカルWEBサーバをそのままアップすると言う方法を採りました。
=MEMO= Windows 11 には「Windows ターミナル」 ユーザ用と管理者用がバンドルされています。
スタートメニューを右クリックしたリストの中に有ります。
Microsoft StoreからWSL(今回はDebian)を導入する
Windows 11 の場合はかなり簡単になりました。スタートメニュー右クリックからPowerShell(管理者用)(A)を選択します。
管理者: Windows PowerShell
PS > wsl --list --online
インストールできる有効なディストリビューションの一覧を次に示します。
'wsl --install -d ' を使用してインストールします。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
openSUSE-42 openSUSE Leap 42
SLES-12 SUSE Linux Enterprise Server v12
Ubuntu-16.04 Ubuntu 16.04 LTS
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
PS > wsl --install -d Debian
のようにします。これで終わりです。
=MEMO= Windows 11 では Linux GUIアプリ(GeditやGIMPなど)がインストール出来、Windowsのスタートメニューに表示されます。
この機能を快適に実行するためにはCPUに合った最新のグラフィックドライバーを使用するとの記述も見られました。
しかし、通常グラフィックドライバーはハードウェアベンダーがハードウェアに合わせて変更している場合も有りますので、よく理解して実行してください。
参考資料(Microsoft Docs)
Linux 用 Windows サブシステムで Linux GUI アプリを実行する
Windows 10 の場合は次のようにインストールします。
- まず、[Win]+[r]を押して「ファイル名を指定して実行」を立ち上げ[Ctrl]→[Enter]とします。
- コントロールパネル(カテゴリー表示)が立ち上がりますので「プログラム」を開きます。
- [Windows の機能の有効化または無効化]をクリックし、図の2つを有効化します。
- Microsoft Store で「wsl debian」(例はdebianの場合です)と検索してインストールします。
インストールが終了すると次のようなアイコンをクリックすることでコンソールを使用できます。
ここまでは、以前にも
GUIを含めた詳細な記事を書きました。
Microsoft Store から Windows Terminal をインストール
今回はここからが本命で、
Windows Terminal と言う多機能なターミナルソフトで使おうとするものです。
ターミナルソフトなのでLinuxのコンソールとしても Power Shell としも使用できて便利です。
よく使うものはデフォルトに設定しておくと立ち上げ後すぐにそのモードで使えます。
=MEMO= Windows 11 には「Windows ターミナル」 ユーザ用と管理者用がバンドルされています。
スタートメニューを右クリックしたリストの中に有ります。
Windows Terminalを使ってapache2とphpをインストールします
Debian
$ sudo apt update; sudo apt upgrade -y
$ sudo apt install php
PHPをインストールすると、Apache2も同時にインストールされます。そして規定で /var/www/html がドキュメントルートになっていて、
ポートも80のままで良ければそのまますぐに使えます。
もし、ポートを変更したい時は次の2ファイル内の 80 を 8080 なりに変更します。
Debian
$ sudo nano /etc/apache2/sites-available/000-default.conf
GNU nano 5.4 /etc/apache2/sites-available/000-default.conf
<VirtualHost *:8080>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
ServerAdmin webmaster@localhost
# DocumentRoot /mnt/e/wwwroot/anotherdecade
DocumentRoot /var/www/html
$ sudo nano /etc/apache2/ports.conf
GNU nano 5.4 /etc/apache2/ports.conf
# If you just change the port or add more ports here, you will likely also have to
# change the VirtualHost statement in /etc/apache2/sites-enabled/000-default.conf
Listen 8080
<IfModule ssl_module>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
Linux側のShell(ターミナル)からWindows側のドライブを見るには
Debian
$ ls /mnt/c
ProgramData 'System Volume Information' Users
Windows 'Documents and Settings' 'Program Files'
'Program Files (x86)'
のように見えます。また、Windows側からLinux側のフォルダを見るには
Back
Alt+HOME
この 作品 は
クリエイティブ・コモンズ 表示 - 非営利 - 改変禁止 4.0 国際 ライセンス
の下に提供されています。
English
Powered by