FreeBSD 12.1 RELEASE - apache24 - cgi を動作させる
1. 概要 apache24 は cgi を動作させるための手順が apache22 よりいささか多くなっています。 2. インストール時のオプションの確認 以下のコマンドでインストール時のオプションを確認します。 cd /usr/ports/www/apache24 make config デフォルトでチェックが入っていますので、意識的に外していなければチェックされていると思いますが 「CGI」もしくは「CGID」のどちらかもしくは両方にチェックが入っていることを確認します。意味が分からない人は両方チェックしておけば無難です。 チェックがはいっていなければ、チェックをいれて「make clean」「make」「make reinstall」します。
cd /usr/ports/www/apache24 make config
「The default MPM Module」のどれにチェックが入っているかを確認しておきます。外れていればチェックして再インストール。 3 つの中は択一ですのでどれかひとつしかチェックできません。
3. p5-CGI インストール portversion -v | grep p5-CGI で p5-CGI がインストールされているかを確認します。 インストールされていなければインストールします。 cd /usr/ports/www/p5-CGI make make install オプションは「EXAMPLES」のみなので、デフォルトのままで、構いません。 4. httpd.conf の編集 「apache」のコンフィグレーションファイルを編集します。 vi /usr/local/etc/apache24/httpd.conf <IfModule !mpm_prefork_module> #LoadModule cgid_module libexec/apache24/mod_cgid.so </IfModule> <IfModule mpm_prefork_module> #LoadModule cgi_module libexec/apache24/mod_cgi.so </IfModule> のうちどちらか、もしくは両方のコメントをはずします。 <IfModule mime_module> からはじまる行のうち #AddHandler cgi-script .cgi のコメントをはずします。.pl という拡張子を cgi として使うのであれば AddHandler cgi-script .cgi .pl と後ろに、追加します。 /usr/local/etc/apache24/httpd.conf とその派生ファイル (Includes/*.conf や Includes/*.conf)のうち <Directory "ディレクトリ名"> で定義しているディレクトリのうち、cgi を動作させたいディレクトリの Options ・・・ の行に Options ・・・ +ExecCGI を加えます。 再起動します。 service apache24 graceful
portversion -v | grep p5-CGI
cd /usr/ports/www/p5-CGI make make install
vi /usr/local/etc/apache24/httpd.conf
<IfModule !mpm_prefork_module> #LoadModule cgid_module libexec/apache24/mod_cgid.so </IfModule> <IfModule mpm_prefork_module> #LoadModule cgi_module libexec/apache24/mod_cgi.so </IfModule>
<IfModule mime_module>
#AddHandler cgi-script .cgi
AddHandler cgi-script .cgi .pl
<Directory "ディレクトリ名">
Options ・・・
Options ・・・ +ExecCGI
service apache24 graceful