2014-02-13 101 views
0

嗨,大家好,我正在一個項目中,我有一個.aspx頁面(index.aspx) 由於一些搜索引擎優化的原因。 SEO傢伙要我表現出的Index.aspx網址爲的index.asp重寫.aspx網址到.asp網址[SEO問題]

即使在頁面的鏈接也應該說的index.asp

我寫了這個規則,但它說沒有找到文件,因爲它實際上不找到實際的.asp文件..所以我只是想從ASPX重寫URL路徑到ASP

<rule name="RewriteASPX"> 
    <match url="(.*)" /> 
    <conditions logicalGrouping="MatchAll"> 
    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
    </conditions> 
    <action type="Rewrite" url="{R:1}.asp" /> 
</rule> 

感謝

回答

0

這種非常簡單的方法,很使用完整。通過這種方式,我們可以重寫N個頁面,並且不需要額外的服務器配置。只有你必須使用Application_BeginRequest事件。在這個事件中使用Context.RewritePath方法來設置哪個URL將在代碼後面內部執行。下面是代碼:

void Application_BeginRequest(object sender, EventArgs e) 
{ 
// Get the current path 
string CurrentURL_Path = Request.Path; 

if (CurrentURL_Path.EndsWith("x")) 
    CurrentURL_Path = CurrentURL_Path.Remove(CurrentURL_Path.Length - 1); 
    { 
    HttpContext MyContext = HttpContext.Current; 
    MyContext.RewritePath("CurrentURL_Path"); 
    } 
} 

注:我還沒有這個短信代碼。

+0

我試過你的代碼,但它出現404錯誤未找到。 – dnts2012