我在IIS框上设置了一个web.config文件,该文件将所有Web请求发送到单个index.php文件,但有两个例外,它们会转到预定目的地,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="redirect all requests" stopProcessing="true">
<match url="^(.*)$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" pattern="" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern="^/app/Library/editor/$" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern="^/app/Library/editor$" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern="^/its/$" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern="^/its$" ignoreCase="true" />
</conditions>
<action type="Rewrite" url="index.php" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
例外工作正常,因为http://servername/its或http://servername/its/提供了正确的页面,但当请求中包含参数时,例如http://servernae/its/?value1=value2,它会返回一个页面找不到错误。 我有一种感觉,这是我错过的显而易见的东西,但我需要添加/更改以使http://servernae/its/?value1=value2按预期工作?
此致