我知道這個問題已經被問了很多次,並且也被大量的回覆,但是我遇到了一些非常奇怪的情況,就像昨天我的代碼在生產服務器和開發機器上工作一樣,但是當我試圖今天運行我的網站,它在我的404上笑我使用ASP.NET 4在IIS 6上進行URL路由/ URL重寫? (沒有IIS訪問)
我被困在路由/重新編寫SEO友好的URL到我的網站的原始網頁,無法改變任何在IIS。 首先,我嘗試使用UrlRewriter.NET,它在我的開發計算機(Windows Server 2008,IIS 7)上工作,但沒有在登臺服務器(Windows Server 2003 R2,IIS 6)上工作,因爲它拋出了404錯誤。然後,我嘗試使用UrlRewriting.NET,這也是我記得的。
編輯:當我試圖用他們我的Visual Studio ASP.NET開發服務器上工作的UrlReWriting.NET但不是在IIS
然後我的一個同事和一點搜索說服我使用URL路由,而不是URL重寫,所以我就到ASP.NET URL路由裏面的Global.asax
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("GalleryCategory", "Gallery/", "~/Gallery.aspx");
routes.MapPageRoute("Gallery", "Gallery/{*image}", "~/Gallery.aspx");
}
下面的代碼是的,我也嘗試下面在web.config中,但沒有使用的解決方案
<modules runAllManagedModulesForAllRequests="true">
<remove name="UrlRoutingModule"/>
<add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</modules>
但他們也讓我無所適從所有那些404s。
PS。我的網站上只有一個頁面需要SEO友好的URL,頁面名稱是Gallery.aspx,PathInfo/QueryString參數是動態的。
重要提示:我的生產服務器是Windows Server 2003與IIS 6和我的機器在Windows Server 2008 IIS 7
nope不工作,仍然扔404: – 2013-03-03 09:24:09