최근 Windows Server 2008 SP2의 IIS 7에서 PHP 5.2.9-2를 설정했습니다. 대부분의 모든 것이 정상적으로 작동하는 것 같습니다. PHP가 훌륭하게 실행되고 있습니다. 모든 PHP 코드가 완벽하게 실행됩니다 ... 기본 페이지는 예외입니다. 모든 기본 문서 (index.php)는 PHP에 의해 해석되지 않으며 브라우저에 기본 PHP 코드 만 표시됩니다.IIS7에서 코드를 일반 텍스트로 표시하는 PHP 기본 문서 (index.php)
최상의 예 - 정확히 동일한 코드의 두 페이지 (index.php + phpinfo.php) : <? php phpinfo(); ? >
http://mysite.com/test/ -> "? <의 PHP은 phpinfo();? >"(평문 표시) http://mysite.com/test/index.php -> "? <의 PHP은 phpinfo(); >"(평문 표시)
http://mysite.com/test/phpinfo.php -> 적절한 "블루/그레이"PHP 정보 페이지
어떤 이상한 것은 내 사이트의 루트 (,)는 기본 문서 인 index.php를 통해 PHP를 잘 해석합니다.
"우수 사례"(http://iis.net/fastcgi/configuration)를 통해 사이트를 설정했습니다. PHP는 FastCGI를 통해 실행됩니다. Index.php는 유일한 기본 문서 유형입니다. "Mysite"는 루트 드라이브의 하위 디렉터리에 있으며 IUSR은 전체적으로 사용 권한을가집니다. Handler Mappings은 FastCGI를 통해 * .php에 대한 최상위 항목으로 PHP를 표시합니다.
몇 시간 동안이 문제를 조사했지만, 비슷한 문제가 있지만 해결 방법이없는 다른 사람들을 보았습니다.
감사합니다.
index.php의 이름을 다른 것으로 변경하면 (예 : test.php, http://mysite.com/test/test.php에서 액세스 할 때 작동합니까? – Matt
예, index.php는 phpinfo.php에서와 똑같은 단 한 줄의 phpinfo() 호출입니다. 파일 이름을 anything_in_the_world.php로 지정하면됩니다. "index.php"라고 부르면 모든 PHP 코드가 일반 텍스트로 표시됩니다. –