2013-02-02 25 views
0

CON是Windows文件系統中的保留字。我有許多地方Con.htm鏈接的文件。不幸的是,由於文件系統的命名限制,我實際上不能用這個名字上傳文件。所以我想創建一個從Con.htm到Con_.htm的301永久移動。但我無法創建該文件來執行HTML重定向。所以我嘗試在我的網絡配置urlMappings爲Con.htm創建301重定向

<urlMappings enabled="true"> 
    <add url="~/0/Con.htm" mappedUrl="~/0/Con_.htm" /> 
</urlMappings> 

但是,這是行不通的。所以我安裝了IIS 7.5的URL重寫模塊。我創建了一個映射條目:

原值:/0/Con.htm 新值:/0/Con_.htm

這不是工作,形成我爲好。我對使用的方法並不特別。任何人都可以提出一個不同的解決方案或糾正我做錯了什麼?

回答

1

不是最實用的,但是你可以在global.asax中做到這一點。事件處理程序添加到的Application_BeginRequest,並做到:

var url = Request.Url.ToString(); 
if (url.Contains("/con.html")) 
    Response.RedirectPermanent("final URL"); 

查看關於RedirectPermanent here更多信息。

+0

謝謝你的幫助。不幸的是,BeginRequest不會在該文件名Con.htm上觸發。它觸發驅動器上存在的文件和不存在的文件,而不是該文件名。 –