linux mintのローカル環境でApache2

2025/6/20 [15:26:07] (金) 天気

Mac miniのlinux mint環境にApache2を設定したのでメモ。


2005年ぐらいに同じようなエントリを何度か書いていて、さらに最近だと2022年頃にも書いている…設定まわりはほんと覚えてないので、くどいけど書き残しておこう。


Apache2のインストールは簡単

$ sudo apt install apache2


↑これだけ。


設定がディストリビューションで微妙に違ってたり、そもそも時代も違っていて昔のうろ覚えが通用しない。毎度毎度グーグル先生。


設定ファイルは

「/etc/apache2/」以下にある。


・apache2.conf


サイトを展開するディレクトリの指定

170行目あたりに指定されているで自分のサイトを追加設定。

___LT___Directory /home/t2akii/doncha.net/___GT___
  Options -Indexes +FollowSymLinks +ExecCGI
  AddHandler cgi-script .cgi .pl
  AllowOverride None
  Require all granted
___LT___/Directory___GT___

基本、どれも呪文だけど

CGIを使うので

「+ExecCGI」

「AddHandler cgi-script .cgi .pl」

を追加。


・sites-available/000-default.conf

WEBサイトの設定ファイル


ServerName doncha.net
ServerAdmin t2akii@doncha.net
DocumentRoot /home/t2akii/doncha.net

VirtualHostの受付portはデフォルトの80のまま。


・sites-available/default-ssl.conf

SSL接続のための設定ファイル


ServerName doncha.net
ServerAdmin t2akii@doncha.net
DocumentRoot /home/t2akii/doncha.net
SSLCertificateFile  /etc/ssl/certs/apache-selfsigned.crt                                                        
SSLCertificateKeyFile  /etc/ssl/private/apache-selfsigned.key

VirtualHostの受付portはデフォルトの443のまま。


SSLCertificateFileとSSLCertificateKeyFileの2行はデフォルト設定されているものをコメントアウトして自分で作ったSSLの自己認証のキーの場所をここに入れる。自己認証証明書の作り方は以下。


opensslが必要なのでインストールする

$ sudo apt install openssl


秘密鍵と自己署名証明書を作成する

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048
-keyout /etc/ssl/private/apache-selfsigned.key
-out /etc/ssl/certs/apache-selfsigned.crt

コマンドを叩くと以下の質問が出てくるのでテキトーに入力する。

Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:local
Locality Name (eg, city) []:Tokyo
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Free
Organizational Unit Name (eg, section) []:Free
Common Name (eg, YOUR name) []:doncha.net
Email Address []:

自分だけしか使わないので、ここは何でもOK


以下のディレクトリにキーファイルが作られる。

/etc/ssl/private/apache-selfsigned.key

→秘密鍵

/etc/ssl/certs/apache-selfsigned.crt

→証明書



*-available/にある設定を本番に反映させるために*-enable/にシンボリックリンクを作成する。

available ←用意してある設定

enable ←反映して生きてる設定


上記したサイト設定のためのふたつの設定ファイル

000-default.confとdefaut-ssl.confをリンク


SSLとCGIを使えるようにするためのモジュールを本番反映用のディレクトリにリンクする必要がある。

mods-available/にある以下のファイルをmods-enable/にリンク

cgi.load

socache_shmcb.load

ssl.conf

ssl.load


デフォルトで使うならこれでOK

わたしの場合、サイトを展開するのが自分のHOME以下なので、Apacheには閲覧したりCGIを走らせる権限がなくて403エラーとなる。


・envvars

apache2.confで使う変数を定義したファイル。


export APACHE_RUN_USER=t2akii
export APACHE_RUN_GROUP=t2akii

デフォルトではApacheは「www-data」というユーザー、グループで実行されることになってるので、ここを自分のユーザー名に変更する。


設定ファイルを編集更新して、各種設定ファイルを本番反映するためのディレクトリにリンクしたらApacheを再起動。

$ sudo systemctrl restart apache2

再起動でエラーが出たら設定ファイルの記述ミス。エラーメッセージが具体的で丁寧なので、メッセージを確認して対応。


ブラウザでlocalhostにアクセス。


image

平成の頃のPCゲーマー御用達、片手で操作できるトラックボール。

飲み食いしながらでもゲームができる逸品。

<<2026/1>>
    123
45678910
11121314151617
18192021222324
25262728293031
検索:

【最近の20件】