对此的 URL 重写规则是什么



我在 Godaddy 的 Windows 主机上有一个静态 Web 应用程序。

在我的应用程序中,我有如下所示的 URL:

http://MyDomain.com/?page_id=18
http://MyDomain.com/?page_id=19
http://MyDomain.com/?page_id=20

我希望重写的 URL 是这样的:

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>

提前谢谢。

<rewrite>
<rules>
<rule name="Rewrite url">
    <match url="^?page_id=18" />
    <action type="Rewrite" url="custom-development.html" />
    </rule>
</rules>
</rewrite>

嗨,实际上我没有使用.html扩展网址重写。 我正在使用一个没有扩展的 url 重写以及您所说的哪个 url 我在我的项目中为该 URL 创建了一个规则,如下所示

<add name="test"  virtualUrl="^~/test-page/([0-9,a-z,A-Z,_,-]*)"
  rewriteUrlParameter="ExcludeFromClientQueryString"
  destinationUrl="~/test.aspx?cid=$1"
  ignoreCase="true" />

我认为这会对你有所帮助...

如果您将 asp.net 与 .Net 版本 4.0 一起使用,您也可以在 Web 表单项目中获得 RouteCollection 的好处。

使用它,您可以轻松地使用特定的导航规则映射您的 URL。

例如,在您的情况下,如果"微软云-CRM-for 小型企业"与任何表中的名称相同,您可以在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;

,然后使用产品名称获取产品详细信息。

通过这种方式,您可以更好地处理正在呈现的逻辑和页面的代码不公正性。这是SEO asp.net 4.0中的新功能之一。

您可以检查以更好地理解。

谢谢

最新更新