Asp.Net實(shí)現(xiàn)404頁(yè)面與301重定向的方法
本文實(shí)例講述了Asp.Net實(shí)現(xiàn)404頁(yè)面與301重定向的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
從一種程度來(lái)講301重定向與404頁(yè)面沒(méi)什么關(guān)系為什么我要拿到一起來(lái)講來(lái),因?yàn)槎己芎?jiǎn)單實(shí)現(xiàn),所在我就一起介紹一下了。
如何在 asp.net 中設(shè)置404頁(yè)面的方法記錄下來(lái)。
下邊首先看看之前的設(shè)置方法,web.config文件中:
<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="404.aspx">
</customErrors>
</system.web>
</configuration>
當(dāng)然,在之前我們已經(jīng)創(chuàng)建了404頁(yè)面404.aspx,相信很多人認(rèn)為這樣就可以了,但是我們忽略了一點(diǎn),這里只做了簡(jiǎn)單的重定向,并沒(méi)有告之瀏覽器該訪問(wèn)頁(yè)面不存在。下邊一段摘自孫明博客:
404錯(cuò)誤就是seo/seo.html" target="_blank">搜索引擎通過(guò)HTTP狀態(tài)碼來(lái)識(shí)別網(wǎng)頁(yè)的狀態(tài)。當(dāng)搜索引擎獲得了一個(gè)錯(cuò)誤鏈接時(shí),網(wǎng)站應(yīng)該返回404狀態(tài)碼,告訴搜索引擎放棄對(duì)該鏈接的索引。而如果返回200或302狀態(tài)碼,搜索引擎就會(huì)為該鏈接建 立索引,這導(dǎo)致大量不同的鏈接指向了相同的網(wǎng)頁(yè)內(nèi)容。結(jié)果是,搜索引擎對(duì)該網(wǎng)站的信任度大幅降低。——很多網(wǎng)站存在這個(gè)問(wèn)題:404頁(yè)面返回的是200或 302狀態(tài)碼而不是404狀態(tài)碼。
所以,接下來(lái)我在 404.aspx 文件下添加了下邊的代碼:
{
Response.Status = "404 Not Found";
}
到這里,通過(guò)使用httpwatch工具可發(fā)現(xiàn)當(dāng)訪問(wèn)網(wǎng)站中不存在的頁(yè)面時(shí),正確的返回了404狀態(tài)碼
那么301頁(yè)面怎么設(shè)置呢,下面我們來(lái)看看
舉個(gè)例子: 如本站原來(lái)的域名是 www.dbjr.com.cn, 現(xiàn)在要將對(duì)這個(gè)域名的訪問(wèn),全部重定向到 www.dbjr.com.cn; 只需在 需要轉(zhuǎn)向的頁(yè)面里,加入如下代碼:
{
Response.Clear();
Response.StatusCode = 301;
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.dbjr.com.cn");
}
使用這個(gè)方法,本站將原來(lái)的域名切換到了www.dbjr.com.cn,現(xiàn)在的域名記起來(lái)應(yīng)該很容易了。
希望本文所述對(duì)大家的asp.net程序設(shè)計(jì)有所幫助。
相關(guān)文章
驗(yàn)證一個(gè)ASP.NET應(yīng)用程序和頁(yè)面的生命周期的實(shí)現(xiàn)代碼
我們知道ASP.NET Page的生命周期實(shí)際上是ASP.NET Application的生命周期的一部分。這個(gè)周期經(jīng)歷了HTTP Module => HTTP Handler => ASP.NET Page => Http Module這樣一個(gè)過(guò)程2012-04-04Asp.net Core項(xiàng)目配置HTTPS支持
這篇文章介紹了Asp.net Core項(xiàng)目配置HTTPS支持的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09ASP.NET/C#中如何調(diào)用動(dòng)態(tài)鏈接庫(kù)DLL
這篇文章主要為大家詳細(xì)介紹了ASP.NET/C#中如何調(diào)用動(dòng)態(tài)鏈接庫(kù)DLL,感興趣的小伙伴們可以參考一下2016-03-03如何在?ASP.NET?Core?Web?API?中處理?Patch?請(qǐng)求
這篇文章主要介紹了在?ASP.NET?Core?Web?API中處理Patch請(qǐng)求,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05ASP.NET?Core?MVC中使用Tag?Helper組件
這篇文章介紹了ASP.NET?Core?MVC中使用Tag?Helper組件的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-02-02Asp.net?mvc實(shí)現(xiàn)上傳頭像加剪裁功能
這篇文章主要介紹了實(shí)現(xiàn)Asp.net?mvc上傳頭像加剪裁功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08