Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在asp.net中将原始url重写为不同的url?_C#_Asp.net_Url Rewriting - Fatal编程技术网

C# 如何在asp.net中将原始url重写为不同的url?

C# 如何在asp.net中将原始url重写为不同的url?,c#,asp.net,url-rewriting,C#,Asp.net,Url Rewriting,我有一个用asp.net开发的网站。我想将URL1更改为URL2。 我在global.asax文件中编写了几行代码 void RegisterRoutes(System.Web.Routing.RouteCollection routes) { routes.MapPageRoute("mdu-b.ed-admission-process-eligibility-apply-online-2015-16.aspx", "mdu-b.ed-admission-process

我有一个用asp.net开发的网站。我想将URL1更改为URL2。 我在global.asax文件中编写了几行代码

void RegisterRoutes(System.Web.Routing.RouteCollection routes)
    {
        routes.MapPageRoute("mdu-b.ed-admission-process-eligibility-apply-online-2015-16.aspx", "mdu-b.ed-admission-process-eligibility-apply-online-2015-16.aspx", "~/mdu-b.ed-admission-process-and-eligibility-2015-16.aspx"); 
    }
并在应用程序启动(对象发送器,EventArgs e)方法中调用此函数,如下所示

RegisterRoutes(System.Web.Routing.RouteTable.Routes);
情景是;这段代码运行良好,但当我像这样打开URL(以原始URL的形式)时,它不会打开更改后的URL,即


你们能给我提供更好的解决方案吗?我该怎么解决我的问题

您可以使用IIS的url重写模块轻松完成此任务。以下web.config配置代码段显示了如何对其进行配置,以便将源代码重写为目标url:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="MyRule" stopProcessing="true">
          <match url="^mdu-b\.ed-admission-process-eligibility-apply-online-2015-16\.aspx$" />
          <action type="Redirect" url="http://www.ssbedugroup.com/mdu-b.ed-admission-process-and-eligibility-2015-16.aspx" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

这有效地将web服务器配置为在每次请求源url时返回重定向响应,因此用户总是会在浏览器地址栏中看到目标url


请记住,“match”标记接受url的正则表达式,因此您需要转义一些经过特殊处理的字符,如点、反斜杠、括号等。

但是如果我刷新页面,它会显示资源不能被删除found@SoftonicAura你能详细说明一下你到底做了什么吗?您是否已尝试按照我的建议配置IIS url重写?