请将以下代码另存为web.config文件,注意后缀是.config,可以先保存在记事本中,重命名,然后上传到网站根目录中,即可生效。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="ThinkPHP" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php/{R:1}" appendQueryString="true" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

修改说明

为了确保伪静态规则能够正确配置在Windows IIS 7.5或以上版本中,我们需要创建一个web.config文件,并将其放置在网站的根目录下。以下是详细的配置步骤和代码说明:

  1. 创建web.config文件

    • 打开记事本或其他文本编辑器。
    • 将上述XML代码复制并粘贴到编辑器中。
    • 将文件保存为web.config,注意文件后缀必须是.config
  2. 上传web.config文件

    • 使用FTP或其他文件传输工具将web.config文件上传到网站的根目录下。
    • 确保文件上传后,IIS服务器能够读取并应用该配置。
 

详细说明

  • XML结构:整个配置文件是一个XML格式的文档,包含一个<configuration>根节点。
  • <system.webServer>节点:定义了与Web服务器相关的配置。
  • <rewrite>节点:启用URL重写模块。
  • <rules>节点:定义了一系列的URL重写规则。
  • <rule>节点:定义了一个名为“ThinkPHP”的重写规则。
  • <match>节点:匹配所有URL请求。
  • <conditions>节点:定义了两个条件,确保请求的URL既不是目录也不是文件。
  • <action>节点:将所有匹配的请求重写到index.php/{R:1},其中{R:1}表示匹配的URL路径。

通过以上配置,ThinkPHP框架的URL路由功能将在Windows IIS 7.5或以上版本中正常工作,实现伪静态效果。