我在Godaddy的Windows托管上有一个静态Web应用程序。
在我的应用程序中,我有以下网址:
http://MyDomain.com/?page_id=18
http://MyDomain.com/?page_id=19
http://MyDomain.com/?page_id=20
我希望重写的网址如下:
http://MyDomain.com/microsoft-cloud-crm-for-small-business
http://MyDomain.com/online-development
http://MyDomain.com/small-development
那么web.config文件中的URL重写规则是什么..?
修改
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" />
<asp scriptErrorSentToBrowser="true"/>
<rewrite>
<rules>
<rule name="Rewrite url" stopProcessing="true">
<match url="^\?page_id=18" />
<action type="Rewrite" url="microsoft-cloud-crm-for-small-business" />
</rule>
<rule name="Rewrite url1">
<match url="^\?page_id=21" />
<action type="Rewrite" url="Implementation" />
</rule>
</rules>
</rewrite>
</system.webServer>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true"/>
</system.web>
</configuration>
提前致谢。
答案 0 :(得分:0)
<rewrite>
<rules>
<rule name="Rewrite url">
<match url="^?page_id=18" />
<action type="Rewrite" url="custom-development.html" />
</rule>
</rules>
</rewrite>
答案 1 :(得分:0)
你好我实际上并没有使用.html extenssion url Rewriting。我正在使用一个没有extenssion url重写和你说的url我在我的项目中为该url创建了一个规则,它位于下面
<add name="test" virtualUrl="^~/test-page/([0-9,a-z,A-Z,_,-]*)"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/test.aspx?cid=$1"
ignoreCase="true" />
我认为这会对你有帮助......
答案 2 :(得分:0)
那么如果您使用的是.Net版本4.0的asp.net,您也可以在Web表单项目中获得RouteCollection的好处。
使用此功能,您可以轻松地将您的网址映射到特定的导航规则。
在您的情况下,如果“microsoft-cloud-crm-for-small-business”是来自任何表的相同名称,您可以在global.asax中添加以下代码......
routes.MapPageRoute(
"ViewPageDetail", // Route name
"/{*CategoryName}", // Route URL
"~/PageDetail.aspx" // Web page to handle route
);
然后在您的页面加载中,您可以拥有类似的内容。
string productName = Page.RouteData.Values["CategoryName"] as string;
并使用productname获取产品详细信息。
通过这种方式,您可以使用正在呈现的逻辑和页面实现更好的代码不完整性。这是asp.net 4.0 for SEO的新内容之一。
您can check可以更好地理解。
谢谢