IIS 6上的子文件夹中的不同默认文档类型

时间:2010-01-15 19:56:40

标签: iis web-config

我之前从未使用过PHP的IIS服务器,但我的问题是我可以在web.config中为子文件夹设置默认文档类型,这就是我的想法(它是一个bbPress论坛):

<location path="forum">
<system.webServer>
    <defaultDocument>
        <files>
            <add value="index.php" />
        </files>
    </defaultDocument>
</system.webServer>
</location>

感谢并向回答的人提供虚拟啤酒:D

2 个答案:

答案 0 :(得分:3)

如果您使用的是IIS7,那么您建议的配置确实会将子文件夹forum的默认文档更改为index.php

如果这是IIS 6,则它不适用于非管理用户。 IIS 6将这些设置存储在元数据库中,并且只能使用以下命令进行编辑:

  • IIS管理控制台
  • 以编程方式,但修改应用程序需要管理员权限
  • 直接元数据库编辑

<system.webServer> xml web.config设置仅适用于IIS 7及更高版本,IIS 6将完全忽略这些设置。

答案 1 :(得分:0)

我不确定这是否有效,但如果您知道您网站的默认文档是什么,则可以尝试使用UrlMapping覆盖它。例如:

<system.web>
    <urlMappings>
        <add url="~/forum/Default.aspx" mappedUrl="~/forum/index.php" />
    </urlMappings>
</system.web>

如果这对你有用,请告诉我。您可能必须创建一个虚拟的Default.aspx,它在该目录中只是空白,以便它可以工作。

编辑:此外,对于它的价值,您只需将“index.php”添加到整个站点的默认文档列表中即可。我不确定你是否知道这一点。只需将其放在列表的底部,它就不会破坏您网站的任何其他部分。