【发布时间】:2009-06-08 18:08:02
【问题描述】:
我最近在 Windows Server 2008 SP2 上的 IIS 7 上设置了 PHP 5.2.9-2。大多数一切似乎都运行良好——PHP 运行良好,几乎所有 PHP 代码都运行良好……除了默认页面。 PHP 不会解释任何默认文档 (index.php),页面仅在浏览器中显示底层 PHP 代码。
最佳示例——两个页面(index.php + phpinfo.php)的代码完全相同:
http://mysite.com/test/ --> ""(明文显示) http://mysite.com/test/index.php --> ""(明文显示)
http://mysite.com/test/phpinfo.php --> 正确的“蓝色/灰色”PHP 信息页面
奇怪的是:我网站的根目录 (http://mysite.com) 通过其默认文档 index.php 很好地解释了 PHP。
我已通过“最佳做法”(http://iis.net/fastcgi/configuration) 设置了网站。 PHP 通过 FastCGI 运行。 Index.php 是唯一的默认文档类型。 “Mysite”位于根驱动器之外的子目录中,IUSR 始终具有权限。处理程序映射通过 FastCGI 将 PHP 显示为 *.php 的顶部条目。
在谷歌上搜索了几个小时,看到其他人有非常相似的问题,但没有解决方案。
谢谢!
【问题讨论】:
-
如果您将 index.php 重命名为其他名称,例如test.php,当你在mysite.com/test/test.php 访问它时它是否有效?
-
我注意到有人遇到了类似的问题here,这是由于移动了文档根目录而引起的。
-
是的,index.php 与 phpinfo.php 中的单行 phpinfo() 调用完全相同。将文件命名为anything_in_the_world.php,它可以工作。称它为“index.php”,它不会——所有的 PHP 代码都以明文形式显示。
标签: php iis-7 indexing default