在web.config文件中设置redirect
我正试图用一些更具描述性的东西来redirect一些不友好的url。 这些url以.aspx?cid=3916
结尾,每个类别名称页面的最后几位数字不同。 我想它redirect到Category/CategoryName/3916
。 我在web.config
文件中试过这个:
<location path="Category.aspx?cid=3916"> <system.webServer> <httpRedirect enabled="true" destination="http://www.site.com/Category/CategoryName/3916" httpResponseStatus="Permanent" /> </system.webServer>
但是因为它不是以扩展而结束,所以不起作用。 有没有简单的方法来使这个工作? 我正在使用IIS 7.5。
- 在旧页面所在的目录中打开web.config
-
然后添加旧位置path和新目标的代码,如下所示:
<configuration> <location path="services.htm"> <system.webServer> <httpRedirect enabled="true" destination="http://domain.com/services" httpResponseStatus="Permanent" /> </system.webServer> </location> <location path="products.htm"> <system.webServer> <httpRedirect enabled="true" destination="http://domain.com/products" httpResponseStatus="Permanent" /> </system.webServer> </location> </configuration>
您可以根据需要添加尽可能多的位置path。
你可能想看看URL Rewrite这样的东西,把URL改写成更友好的URL,而不是使用简单的httpRedirect
。 然后你可以制定一个这样的规则:
<system.webServer> <rewrite> <rules> <rule name="Rewrite to Category"> <match url="^Category/([_0-9a-z-]+)/([_0-9a-z-]+)" /> <action type="Rewrite" url="category.aspx?cid={R:2}" /> </rule> </rules> </rewrite> </system.webServer>
- MVC SelectList在文本字段中组合多个列
- ASP.NET WebHooks和Signal-R的区别
- 如何在debuggingASP.NET应用程序时在Fiddler中显示本地主机stream量?
- 如何查看HttpWebRequest类发送的原始HTTP请求?
- System.Web.Http.Authorize与System.Web.Mvc.Authorize
- 使用FileUpload Control获取文件的完整path
- 无法在IIS中启动网站(由另一个进程使用)
- 在ASP.NET MVC 4中使用自定义数据库模式的SimpleMembership
- ASP.NET Web Api:所请求的资源不支持http方法“GET”