IIS7 があり、サンプルの PHP スクリプトをレンダリングしようとしています。Windows 認証を ON に設定していることに注意してください。
<?php
echo "Content-Type: text/html";
echo "\n";
echo "BEGIN\n";
echo "END";
?>
しかし、私は以下のエラーが発生します:
HTTP Error 502.2 - Bad Gateway
The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are "<b>Security Alert!</b> The PHP CGI cannot be accessed directly. <p>This PHP CGI binary was compiled with force-cgi-redirect enabled. This means that a page will only be served up if the REDIRECT_STATUS CGI variable is set, e.g. via an Apache Action directive.</p> <p>For more information as to <i>why</i> this behaviour exists, see the <a href="http://php.net/security.cgi-bin">manual page for CGI security</a>.</p> <p>For more information about changing this behaviour or re-enabling this webserver, consult the installation file that came with this distribution, or visit <a href="http://php.net/install.windows">the manual page</a>.</p>"
Module CgiModule
Notification ExecuteRequestHandler
Handler PHP
Error Code 0x00000103
Requested URL http://localhost:8080/phpinfo.php
Physical Path C:\inetpub\wwwroot\phpinfo.php
Logon Method Anonymous
Logon User Anonymous
しかし :
C:\PHP\php.ini:
cgi.force_redirect = 0
cgi.redirect_status_env = REDIRECT_STATUS
と
c:\PHP>php-cgi.exe C:\inetpub\wwwroot\phpinfo.php
X-Powered-By: PHP/5.2.17
Content-type: text/html
Content-Type: text/html
BEGIN
END
c:\PHP>
これを解決する方法を教えてください。実際、イントラネット サイトにアクセスしているイントラネット ユーザーを知るには、$_SERVER['LOGON_USER'] 変数の値が必要ですか?
::アップデート::
この問題は php.ini ファイルを変更することで解決されました - オンにする必要があるオフに設定されているデフォルト設定のようです:
http://www.thesitewizard.com/php/install-php-5-apache-windows.shtml