apache2のV2.4.7を使用する場合の注意点とヒント
apache2のV2.4.7のデフォルト設定は、V2.4.6のデフォルト設定とは異なり、htmlファイルを格納するディレクトリ(フォルダ)は以下のように変更されています。
V2.4.6 html ファイルのディレクトリ /var/www
V2.4.7 html ファイルのディレクトリ /var/www/html
ubuntu 14.04LTS上でapache2 V2.4.7を利用する場合には、練習問題のhtmlファイルを/var/www/html/に配置させるか、練習問題と同じように設定を変更して/var/www/に配置させることなどが考えられます。
htmlファイルを/var/www/とする場合には、/etc/apache2/sites-available/000-default.confファイルを管理者権限で開いて、以下の部分を変更、追加します。
変更前
DocumentRoot /var/www/htm
変更後
#DocumentRoot /var/www/htm
DocumentRoot /var/www
さらに、CGIプログラムを格納するディレクトリもapache2 V2.4.7のデフォルト設定と、apache2 V2.4.6のデフォルト設定では異なります。
V2.4.6 CGI ファイルのディレクトリ /usr/lib/cgi-bin
V2.4.7 CGI ファイルのディレクトリ /var/www/html
ubuntu 14.04LTS上でapache2 V2.4.7を利用する場合には、練習問題のCGIファイルを/var/www/html/に配置させて、htmlファイル内でCGIを呼び出す部分をそれに合うように変更することが考えられます。また、練習問題と同じディレクトリ名でCGIファイルを使う場合には、apache2の設定を変更して/usr/lib/cgi-binに配置させることなどが考えられます。
CGIファイルを/usr/lib/cgi-binに格納する場合には、/etc/apache2/sites-available/000-default.confファイルを管理者権限で開いて、以下の部分を変更、追加します。
変更前
<Directory "/var/www/html">
AllowOverride All
Options +ExecCGI
Require all granted
</Directory>
変更後
#<Directory "/var/www/html">
# AllowOverride All
# Options +ExecCGI
# Require all granted
#</Directory>
<Directory "/usr/lib/cgi-bin">
AllowOverride All
Options +ExecCGI
Require all granted
</Directory>
さらに、/etc/apache2/conf-available/serve-cgi-bin.confファイルを管理者権限で開いて、以下の部分も続けて変更します。
変更前
<IfDefine ENABLE_USR_LIB_CGI_BIN>
# ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /cgi-bin/ /var/www/html/*/cgi-bin/
# <Directory "/usr/lib/cgi-bin">
<Directory "/var/www/html/*//cgi-bin/"
変更後
<IfDefine ENABLE_USR_LIB_CGI_BIN>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
# ScriptAlias /cgi-bin/ /var/www/html/*/cgi-bin/
<Directory "/usr/lib/cgi-bin">
# <Directory "/var/www/html/*//cgi-bin/"
設定ファイルを変更した後は、必ずapache2を管理者権限で再起動(resart)させます。また、設定ファイルを変更、追加する場合にはバックアップをとっておいた方が無難です。