利用404錯(cuò)誤頁(yè)面實(shí)現(xiàn)UrlRewrite的實(shí)現(xiàn)代碼
將下面代碼保存到err404.html,然后設(shè)置404錯(cuò)誤頁(yè)面為err404.html頁(yè);
<script type="text/javascript" language="javascript">
var id=/(detial|show)\.asp\?id\=([0-9]+)/gi;
var flag=/([a-z0-9_]+)\.asp\?flag\=xml/gi;
var re_id=/(detial|show)\_([0-9]+)\.html/gi;
var re_flag=/([a-z0-9_]+)\.rss/gi;
var host='blog.ii-home.cn';
var ss=window.location.href;
//ss=ss.replace(window.location.hostname,host);
var Temp=getasp(ss);
getNotice(Temp);
function createobj() {
if (window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
return new XMLHttpRequest();
}
}
function getNotice(url) {
var oBao=createobj();
var my_url=url;
oBao.open('get',my_url,false);
oBao.onreadystatechange=function(){
if(oBao.readyState==4){
if(oBao.status==200){
var returnStr=oBao.responseText;
var Temps=gethtml(returnStr);
document.write(Temps);
}else{
document.write("未找到您輸入的地址或服務(wù)器505錯(cuò)誤!");
}
}
}
oBao.send(null);
}
//將str中的asp網(wǎng)址按照正則替換
function gethtml(str){
var Temp_str=str.replace(id,'$1_$2.html');
Temp_str=Temp_str.replace(/index\.asp/gi,'index.html');
Temp_str=Temp_str.replace(/myfiles\.asp/gi,'myfiles.html');
Temp_str=Temp_str.replace(/mydiary\.asp\?typ\=self/gi,'mydiary_self.html');
Temp_str=Temp_str.replace(/mydiary\.asp/gi,'mydiary.html');
Temp_str=Temp_str.replace(flag,'$1.rss');
Temp_str=Temp_str.replace(/xml_diary\.asp/gi,'xml_diary.html');
Temp_str=Temp_str.replace(/xml_download\.asp/gi,'xml_download.html');
Temp_str=Temp_str.replace(/xml_links\.asp/gi,'xml_links.html');
Temp_str=Temp_str.replace(/xml_ly\.asp/gi,'xml_ly.html');
Temp_str=Temp_str.replace(/ly\.asp/gi,'ly.html');
//Temp_str=Temp_str.replace(/href=\"(http){0}/gi,');
return(Temp_str);
}
//將URL替換成原地址
function getasp(str){
var Temp_str=str.replace(re_id,'$1.asp?id=$2');
Temp_str=Temp_str.replace(/index\.html/gi,'index.asp');
Temp_str=Temp_str.replace(/myfiles\.html/gi,'myfiles.asp');
Temp_str=Temp_str.replace(/mydiary\.html/gi,'mydiary.asp');
Temp_str=Temp_str.replace(/mydiary\_self.html/gi,'mydiary.asp?typ=self');
Temp_str=Temp_str.replace(/xml_diary\.html/gi,'xml_diary.asp');
Temp_str=Temp_str.replace(/xml_download\.html/gi,'xml_download.asp');
Temp_str=Temp_str.replace(/xml_links\.html/gi,'xml_links.asp');
Temp_str=Temp_str.replace(/xml_ly\.html/gi,'xml_ly.asp');
Temp_str=Temp_str.replace(/ly\.html/gi,'ly.asp');
Temp_str=Temp_str.replace(re_flag,'$1.asp?flag=xml');
return(Temp_str);
}
</script>
一般來(lái)說(shuō)通過(guò)js才可以獲取當(dāng)前404頁(yè)面網(wǎng)址,如果是asp、php獲取的就是404頁(yè)面的url,所以結(jié)合js與php或asp比較好。
例如:通過(guò)404觸發(fā)asp執(zhí)行一些操作
<script>
var pathname = window.location.pathname;
location.replace("/do.asp?p="+pathname);
</script>
注意:一般情況下不會(huì)給太高權(quán)限的服務(wù)器,不能復(fù)制等操作。
- AspNetPager分頁(yè)控件UrlRewritePattern參數(shù)設(shè)置的重寫(xiě)代碼
- asp.net用url重寫(xiě)URLReWriter實(shí)現(xiàn)任意二級(jí)域名 高級(jí)篇
- asp.net用url重寫(xiě)URLReWriter實(shí)現(xiàn)任意二級(jí)域名 新
- asp.net用url重寫(xiě)URLReWriter實(shí)現(xiàn)任意二級(jí)域名
- asp.net下用url重寫(xiě)URLReWriter實(shí)現(xiàn)任意二級(jí)域名的方法
- windows server 2008R2系統(tǒng) IIS7.5配置偽靜態(tài)的方法(urlrewrite)
- URLRewriter最簡(jiǎn)單入門(mén)介紹 URLRewriter相關(guān)資源
- 關(guān)于Server.Transfer(URL)和UrlReWrite的一個(gè)突發(fā)奇想
- UrlRewrite 重寫(xiě)url詳解及實(shí)例
相關(guān)文章
BOM系列第一篇之定時(shí)器setTimeout和setInterval
這篇文章主要介紹了BOM系列第一篇之定時(shí)器setTimeout和setInterval 的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-08-08
JavaScript高級(jí)程序設(shè)計(jì) 讀書(shū)筆記之十 本地對(duì)象Date日期
本地對(duì)象Date日期操作實(shí)現(xiàn)方法,需要的朋友可以參考下2012-02-02
詳解使用Next.js構(gòu)建服務(wù)端渲染應(yīng)用
這篇文章主要介紹了詳解使用Next.js構(gòu)建服務(wù)端渲染應(yīng)用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
超級(jí)簡(jiǎn)單實(shí)現(xiàn)JavaScript MVC 樣式框架
本文給大家分享的是一則翻譯過(guò)來(lái)的,由國(guó)外友人寫(xiě)的如何簡(jiǎn)單有效的實(shí)現(xiàn)javascript MVC樣式框架,算是一個(gè)MVC的入門(mén)教程,希望大家能夠喜歡。2015-03-03
JS注釋所產(chǎn)生的bug 即使注釋也會(huì)執(zhí)行
寫(xiě)js時(shí)出現(xiàn)個(gè)bug一直提示我JAVA類(lèi)中的一個(gè)屬性沒(méi)有,可是明明注釋掉了,后來(lái)才知道,JS里即使注釋也會(huì)執(zhí)行2013-11-11
JavaScript選取(picking)和反選(rejecting)對(duì)象的屬性方法
這篇文章主要介紹了JavaScript選取(picking)和反選(rejecting)對(duì)象的屬性方法的相關(guān)資料,需要的朋友可以參考下2017-08-08
能說(shuō)明你的Javascript技術(shù)很爛的五個(gè)原因分析
Javascript在互聯(lián)網(wǎng)上名聲很臭,但你又很難再找到一個(gè)像它這樣如此動(dòng)態(tài)、如此被廣泛使用、如此根植于我們的生活中的另外一種語(yǔ)言2011-10-10

