Apache 2.2 の mod perl が perl スクリプトを解析しない

Apache 2.2 の mod perl が perl スクリプトを解析しない

mod_perl (mod perl v2.0.4 / perl v5.10.1) を使って、Windows Server 2008 R2 に新しい Apache 2.2.15 サーバーをセットアップしました。mod_perl と Perl 5.10 は問題なくインストールされ、ロードされました。しかし、私の設定にもかかわらず、mod_perl モジュールは .pl ファイルを認識して実行できず、代わりに perl ソースを出力します。何が間違っているのでしょうか。また、クライアントに送信するのではなく、perl で pl スクリプトを処理するにはどうすればよいのでしょうか。

私の設定:

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "C:\Program Files (x86)\AWStats\wwwroot"
    ServerName analysis.example.com
    ServerAlias analysis.example.com
    ErrorLog "logs/analysis.example.com-error.log"
    CustomLog "logs/analysis.example.com-access.log" common

    DirectoryIndex index.php index.htm index.html

    PerlSwitches -T 

    <Directory "C:\Program Files (x86)\AWStats\wwwroot">
        Options         Indexes FollowSymLinks
        AllowOverride   None
        Order           allow,deny
        Allow           from all
    </Directory>

    <Directory "C:\Program Files (x86)\AWStats\wwwroot\cgi-bin">
        AllowOverride   None
        Options         None
        Order           allow,deny
        Allow           from all

        <FilesMatch "\.pl$">
            SetHandler perl-script
        #   #PerlResponseHandler ModPerl::Registry
            PerlOptions +ParseHeaders
            Options +ExecCGI
        </FilesMatch>

    </directory>

</VirtualHost>

ご協力本当にありがとうございました!

答え1

ご覧になったと思いますこのページ? mod_perl を正しくロードしていますか?

今も問題になるかどうかはわかりませんが、少なくとも以前は Apache のパスにスラッシュを使用する必要がありました。たとえば、"C:\Program Files (x86)\AWStats\wwwroot\cgi-bin"に変更します"C:/Program Files (x86)/AWStats/wwwroot/cgi-bin"。また、 が大文字でないことに気付きましたが</directory>、これも問題になるかどうかはわかりません。

また、ディレクティブではなくディレクティブを使用して、それぞれ「」と「」に変更することもできます。

関連情報