iis url重写可以在旧服务器上工作,但不能在新服务器上工作
我在iis7 Win server 2008 RC2服务器上使用url重写已经有好几年了,效果非常好。现在,我尝试将整个配置移动到一个新的(虚拟)服务器(相同的操作系统),但它就是不起作用。重写的目的是避免URL中的端口号(“:”)。这是位于子文件夹/834中的my web.config,用户可以输入mysite/834而不是mysite:834iis url重写可以在旧服务器上工作,但不能在新服务器上工作,iis,url-rewriting,Iis,Url Rewriting,我在iis7 Win server 2008 RC2服务器上使用url重写已经有好几年了,效果非常好。现在,我尝试将整个配置移动到一个新的(虚拟)服务器(相同的操作系统),但它就是不起作用。重写的目的是避免URL中的端口号(“:”)。这是位于子文件夹/834中的my web.config,用户可以输入mysite/834而不是mysite:834 <?xml version="1.0" encoding="UTF-8"?> <configuration> <
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="tp_redirect" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{URL}" pattern=".+(834)/(.*)" />
</conditions>
<action type="Rewrite" url="http://teamplay.vps.mibosoft.se:{C:1}/{C:2}" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
如前所述,此配置在我的旧服务器上运行良好。以下是我在新服务器上所做的操作:
这让我发疯。有什么想法吗?解决了!我比较了服务器之间的文件%windir%\System32\inetsrv\config\applicationHost.config,发现下面的“重写”部分缺失,并且行proxy enabled=“true”
当我添加这些行时,它开始工作。魔术我想知道为什么…没有提示?这是一个无声的论坛…你把这个配置放在文件的什么地方了?我想这是我最喜欢的
<validation />
<rewrite>
<globalRules>
<clear />
</globalRules>
<allowedServerVariables>
</allowedServerVariables>
<outboundRules>
</outboundRules>
<rewriteMaps>
</rewriteMaps>
</rewrite>
<diskCache>
<compression>
<add mimeType="text/*" enabled="true" />
<add mimeType="message/*" enabled="true" />
<add mimeType="application/x-javascript" enabled="true" />
<add mimeType="application/javascript" enabled="true" />
</compression>
</diskCache>
<proxy enabled="true" />