URL重写 - 生成奇数网址

时间:2016-02-11 11:50:59

标签: url-rewriting

我第一次尝试进行URL重写。 通常情景。域名与主机分开。 所以我已经将名称服务器和域点更改为在主机上保存页面,这样就可以了。 并从主机购买域指针以允许将域指向子文件夹。 将以下代码添加到根文件夹中的Web配置文件:

<?xml version="1.0"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="xyz.uk" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^(www.)?xyz.uk" />
          </conditions>
          <action type="Redirect" url="\xyz\ {R:0}" />
        </rule>
      </rules>
    </rewrite> 
  </system.webServer>
</configuration>

我收到“页面未正确重定向”,我的网址显示为“http://www.xyz.uk/%5Cxyz%5Cxyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/xyz/

用Google搜索,我看到的所有例子与我正在使用的例子相同。 我哪里错了? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

有效的实际代码如下。

提示.............我在另一个论坛上得到了帮助,即使我做了更改,页面仍然不会重定向。

问题是..........浏览器缓存记住了旧的重定向网址!!

清除浏览器缓存,然后立即看到任何更改。发生在Chrome和Firefox中。

正确的代码:

<?xml version="1.0"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="xyz.uk" stopProcessing="true">
          <match url=".*" ignoreCase="true" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^(www.)?xyz.uk" />
            <add input="{PATH_INFO}" pattern="^/xyz/" negate="true" />
          </conditions>
          <action type="Redirect" url="xyz/{R:0}" />
        </rule>
      </rules>
    </rewrite> 
  </system.webServer>
</configuration>