FreeBSD 12.3 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 の編集 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> 165、168行のコメントをはずします。 <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