質問: テキストを表示する代わりにapacheでcgiを実行するにはどうすればよいですか? bugzilla 4をubuntu 11.04にインストールしようとしています私はhttpd.confに次を追加しました<directory “/var/www/dev.spincentre/bugzilla”> addhandler cgi-script .cgi options +indexes +execcgi directoryindex index.cgi allowoverride limit </directory> しかし、urlにアクセスすると、apacheはスクリプトを実行する代わりにindex.cgiのテキストを表示します。それを修正する方法はありますか?
回答: apache 2.4をインストールするときに、解決すべき多くの問題があり、cgiを実行する代わりにテキストが表示されるという同じ問題もありました。解決策は上記と同じではなく、apache 2.2の解決策ですまず、2.4 gzファイルをダウンロードして解凍します。コンパイルしようとすると、aprが含まれていないため、aprが見つからないと文句を言います。 apacheからaprおよびapr-utilファイルをダウンロードし、apacheをコンパイルするディレクトリにsrclibというサブディレクトリに展開する必要があります。そのため、パスは./httpd/srclib/aprおよび./httpd/srclib/aprになります。 -util。また、ディレクトリ名からバージョン番号を削除する必要があります。/ path/httpdディレクトリにcdして、コンパイルします$ ./configure --with-included-apr設定はデフォルトでprefix =/usr/local/apache2になります$ make$インストールする$ vi prefix/conf/httpd.confhttpd.confファイルを編集して、実行するcgiを取得する必要があります。私の場合、次のことを行いました。listen 80をlisten 127.0.0.1:80に変更します次の行をアクティブにします:loadmodule cgid_module modules/mod_cgid.sosevernameをservername 127.0.0.1:80に変更しましたdocumentrootとdirectoryのパスをシステムに合わせて変更しましたscriptaliasのパスを変更しました行scriptsock cgisockを有効にしましたscriptaliasの後にディレクトリのパスをシステムに合わせて変更しました行addhandler cgi-script .cgiを有効にしました変更を保存し、apacheを起動しました:$/usr/local/apache2/bin/apachectl -k startこれがこれに苦労している人を助けることを願っています;)