毎回Apacheのサーバを自分のパソコンで立ち上げる際は、wslを動かしてコマンドにsudo /etc/init.d/apache2 startと入力していた。

しかし、これを毎回入力するのは面倒だ。

そこで、Windowsの立ち上げとともに、Apacheが自動で立ち上がってくれないかなと記事を調べていたら、ありましたよ。

WSLのApache/MySQL(MariaDB)をWindows起動時に自動起動させる [WSL/Ubuntu環境]

Apache/MariaDBはsudoのパスワード入力なしで実行可能とする

※私の環境ではMariaDB(MySQL)を入れていないので、DB周りは省く


環境

OS:Windows 10 Home

wsl2上の環境

Ubuntu-20.04

Apache2.4.38

PHP7.4.3


# my-auto-startファイルの生成
sudo vi /etc/sudoers.d/my-auto-start

vimでmy-auto-startに下記の2行を入力する

$ sudo ALL=NOPASSWD: /etc/init.d/apache

以下を実行して、括弧内のコマンドを.bashrcファイルの末尾に追加する。

$ echo 'sudo /etc/init.d/apache2 restart' >> ~/.bashrc

Win+Rキーで

shell:startupと入力し、ここにメモ帳でmy-auto-start.vbsファイルを作成する。

中身は下記のコードである。

Dim WShell
Set WShell = WSCript.CreateObject("WScript.Shell")
WShell.Run "wsl.exe", 0
Set WShell = Nothing

Windowsを再起動して確認する。