web-dev-qa-db-ja.com

PHPをApacheおよびWindowsでFastCGIとして機能させることはできません

PHPをFastCGIとして実行しようとしていますが、成功しません。

mod_fcgid page で* .confファイルを作成しましたが、ラッパースクリプトはありません。

これが私のconfです:

# php5 as FastCGI executable
FcgidMaxRequestsPerProcess 10000

# Uncomment the following line if cgi.fix_pathinfo is set to 1 in
# php.ini:
# FcgidFixPathinfo 1

<Location "D:/www">
    AddHandler fcgid-script .php
    Options +ExecCGI
    FcgidWrapper "C:/php/php-cgi.exe" .php

    # Customize the next two directives for your requirements.
    Order allow,deny
    Allow from all
</Location>

サーバーは正常に起動し、fcgid_moduleはhttpd -Mで示されますが、phpファイルはプレーンテキストとしてサーバーです。

2
paulodiovani

好奇心から、あなたのラインを変えてみてください:

AddHandler fcgid-script .php

AddHandler fcgid-script php

起動して実行するために、mod_fastcgiの使用を検討することもできます(Apacheのmod_fcgidではないことに注意してください)。 dllはここから入手できます http://www.fastcgi.com/dist/mod_fastcgi-2.4.6-AP22.dll これはHttpd2.2用であることに注意してください。 (2.4用のdllも利用できます。)

構成エントリは次のようになります。

LoadModule fcgid_module modules/mod_fcgid.so
<IfModule mod_fastcgi.c>
    Alias /fcgi-bin "C:/www/cgi-bin"
    FastCgiServer "C:/www/cgi-bin/php-cgi.exe" -initial-env PATH=C:/php -initial-env PHPRC=C:/php
    AddHandler php-fastcgi .php
    <Location /fcgi-bin/>
        Options ExecCGI
        SetHandler php-fastcgi
    </Location>
    AddType application/x-httpd-fastphp .php
    Action php-fastcgi /fcgi-bin/php-cgi.exe
</IfModule>

あなたはおそらくより少ないもので逃げることができます、しかしそれは窓で私のために働きます。

1
Borgboy