亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

實用Server.Transfer輕松用ASP實現Rewrite模擬生成靜態頁效果

2019-11-17 04:27:57
字體:
來源:轉載
供稿:網友

以前剛剛懂404.asp的時候,曾經幻想把所有程序代碼寫到404.asp中,實現一個模擬生成靜態網頁的站,如果程序小還可以,用404.asp實現Rewrite還是一個不錯的選擇,如果程序代碼多達100000行,恐怕就要開始爬了

直到看到asp的Server.Transfer,用404模擬生成靜態頁的站的念頭重新在我的腦海中浮現出來,現在即使在大的程序,也可以用ASP中的Server.Transfer輕松搞定

<!--#include file="bin/404_Query"-->
< %
select case bin_command
        case "bin"
                server.transfer("bin/web")
        case "uploadfiles"
                server.transfer("bin/send-stream")
        case else
                server.transfer("bin/send-404")
end select
%>
呵呵,說白了,就是根據bin_command來判斷到底要實現很么功能,如果為bin則由asp的Server.Transfer移交到到bin/web,然后返回結果,并且能很好的解決URL地址的友好性的問題,實現模式生成靜態頁的效果。在php中沒有Rewrite,如果想要URL友好性通常實用PATH_INFO,而本程序由asp的Server.Transfer模擬了PHP中的Path_Info,唯一需要的就是要支持404.asp

bin/404_Query的源代碼如下:

< %
Urls=mid(request.querystring,instr(request.querystring,":80")+4)
if instr(Urls,"/")>0 then
        bin_command=left(Urls,instr(Urls,"/")-1)
        getfile=replace(Urls,bin_command&"/","")
else
        bin_command="bin"
end if
%>
這段代碼主要是判斷bin_command由什么來執行,首先看是否包含二級目錄,如果沒二級目錄,則賦值”bin”(代表程序)
如:demo.com/index5.html,則bin_command=”bin”,通過上邊的代碼可以知道交給bin/web處理
demo.com/uploadfiles/123456.gif(該文件實際對應的是files/123456.gif),則bin_command=”uploadfiles”,通過上邊的代碼可以知道交給bin/send-stream處理,send-stream怎么輸出files/123456.gif呢。可以參考我以前寫的一篇文章 ASP實用BinaryWrite與Adodb.Stream實現下載(http://miaoqiyuan.cn/p/asp-binarywrite-adodb-stream/
demo.com/111/222,則bin_command=”111″,在select case中沒有定義,則是else,交給bin/send-404處理,輸出沒有找到文件的信息

這樣在所有訪客(包括:百度,Google)看來,本站都是一個生成靜態的頁面了。據我所知國內IIS主機有99.9%不支持Isapi_Rewrite,就遇過一次,因為占資源太嚴重很快就給取消了。

下面是我在ASP學習網上看到的,附在后面,以供參考:
調用 Server.Transfer 方法,立即終止執行第一頁并且開始執行第二頁。

如果第一頁開始寫入響應緩沖區, 第二頁追加內容到緩沖區而不是替換它。

如果緩沖是打開, 該方法將修改 HTTP 頭,除非尚沒有內容已被發送.如果 ASP 緩沖關閉, HTTP 頭將不修改.

當傳輸到其他應用程序, 起始頁 applicationsession 對象將包含應用程序信息中。

示例
下列示例頁闡釋如何使用 Server.Transfer 方法。
1.

<html>
<body>
<h3>Step 1 - Form Page</h3>
<table border="1">
<tr>
<th>POST</th>
<td>
<form action="page2.asp" method="POST">
<input type="text" name="Name"/>
<input type="submit" value="Submit"/>
</form>
</td>
</tr><tr>
</tr>
<th>GET</th>
<td>
<form action="page2.asp" method="GET">
<input type="text" name="Name"/>
<input type="submit" value="Submit"/>
</form>
</td>

</table>
</body>
</html>
2. 將以下代碼作為 ” page2.asp ” (不帶引號):

< % @LANGUAGE="VBSCR<html>
<body>
<h3>Step 2 - Transfer Page</h3>
< %
Select Case UCase(Request.ServerVariables("REQUEST_METHOD"))
Case "POST"
Server.Transfer "page3a.asp"
Case "GET"
Server.Transfer "page3b.asp"
Case Else
Response.Write "An unknown HTTP verb was used."
End Select
%>
</body>
</html>
3. 將以下代碼作為 ” page3a.asp ” (不帶引號):

< % @LANGUAGE="VBSCRIPT" %>
<h3>Step 3a - POST Results</h3>
<p>Hello < % = Request.Form("Name") %></p>
4. 將以下代碼作為 ” page3b.asp ” (不帶引號):

< % @LANGUAGE="VBSCRIPT" %>
<h3>Step 3b - GET Results</h3>
<p>Hello < % = Request.QueryString("Name") %></p>
注意: 最后兩頁是不完整 HTML 頁。 這是因為兩頁都追加到到第二頁緩沖區上。

瀏覽page1.asp,即可測試該實例。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲另类图片色| 97在线看免费观看视频在线观看| 中文字幕成人在线| 一区二区三区四区精品| 国产精品中文字幕在线| 日韩视频免费在线观看| 日韩免费在线免费观看| 91精品国产高清久久久久久91| 在线视频国产日韩| 在线观看亚洲视频| 午夜精品免费视频| 成人国产在线激情| 国产精品一区二区三区免费视频| 国产成人精品视频| 国产日韩欧美中文| 成人黄色激情网| 亚洲国产精品99| 国产成人精品av| 亚洲欧洲激情在线| 亚洲欧美精品伊人久久| 国产精品视频26uuu| 久色乳综合思思在线视频| 亚洲色图综合网| 91精品久久久久久久久久久久久| 亚洲第一精品夜夜躁人人爽| 成人深夜直播免费观看| 超碰日本道色综合久久综合| 国产精自产拍久久久久久| 国产精品旅馆在线| 久久久免费av| 992tv成人免费影院| 欧美久久精品午夜青青大伊人| 国产欧洲精品视频| 亚洲精品999| 亚洲精品一区二区久| 欧美激情综合色综合啪啪五月| 国产成人aa精品一区在线播放| 亚洲人成网站999久久久综合| 欧美wwwxxxx| 日韩电影在线观看免费| 超碰精品一区二区三区乱码| 久热在线中文字幕色999舞| 国产一区在线播放| 97香蕉超级碰碰久久免费的优势| 亚洲第一精品久久忘忧草社区| 亚洲精品456在线播放狼人| 亚洲人成网7777777国产| 日韩在线观看免费| 久久影视电视剧免费网站清宫辞电视| 日韩高清欧美高清| 国产91网红主播在线观看| 国产亚洲美女精品久久久| 国产999视频| 亚洲偷欧美偷国内偷| 538国产精品视频一区二区| 成人免费xxxxx在线观看| 国产精品一区二区久久| 久久综合免费视频| 亚洲天堂成人在线视频| 欧美精品免费在线| 亚洲美女性生活视频| 久久精品视频免费播放| 九九九久久国产免费| 欧美黑人性猛交| 久久五月情影视| 97成人精品视频在线观看| 懂色av一区二区三区| 亚洲免费人成在线视频观看| 狠狠爱在线视频一区| 亚洲黄页视频免费观看| 欧美另类极品videosbest最新版本| 国产福利视频一区二区| 欧美精品做受xxx性少妇| 亚洲bt欧美bt日本bt| 亚洲第一区第一页| 国产美女精品视频| 国产精品白丝jk喷水视频一区| 怡红院精品视频| 欧美视频在线观看免费网址| 2019精品视频| 亚洲成色777777女色窝| 欧美小视频在线观看| 日韩hd视频在线观看| 亚洲天堂男人天堂| 欧美一区二区大胆人体摄影专业网站| 欧美另类高清videos| 欧美另类老肥妇| 精品国内产的精品视频在线观看| 美女撒尿一区二区三区| 国产精品福利在线观看| 亚洲人成网站在线播| 91亚洲国产成人精品性色| 欧美日韩在线视频一区二区| 992tv成人免费视频| 成人av资源在线播放| 亚洲国产精品嫩草影院久久| 黑人巨大精品欧美一区二区| 亚洲第一黄色网| 亚洲欧美在线第一页| 国产成人精品一区二区| 久久久久久中文| 国产精品自在线| 成人欧美在线视频| xxxx欧美18另类的高清| 亚洲电影免费观看高清完整版在线| 日韩精品亚洲视频| 国产丝袜视频一区| 国产精品精品视频| 日韩a**中文字幕| 亚洲日韩欧美视频一区| 亚洲成av人乱码色午夜| 亚洲天堂第一页| 亚州国产精品久久久| 亚洲国产91色在线| 亚洲免费伊人电影在线观看av| 亚州欧美日韩中文视频| 日韩电影在线观看免费| 国产一区二区三区在线免费观看| 国产日韩在线亚洲字幕中文| 亚洲护士老师的毛茸茸最新章节| 在线性视频日韩欧美| 在线视频日韩精品| 欧美一级片在线播放| 精品国内产的精品视频在线观看| 草民午夜欧美限制a级福利片| 亚洲欧洲免费视频| 国产脚交av在线一区二区| 欧美大片免费观看在线观看网站推荐| 丁香五六月婷婷久久激情| 日本不卡视频在线播放| 亚洲有声小说3d| 亚洲人午夜精品免费| 亚洲午夜精品久久久久久久久久久久| 久久精品国产96久久久香蕉| 久久久久久中文字幕| 精品久久久久久久久中文字幕| 国产精品视频地址| 亚洲精品国产精品国自产观看浪潮| 欧美日韩国产中文字幕| 少妇高潮久久久久久潘金莲| 1769国内精品视频在线播放| 黑人巨大精品欧美一区二区| 欧美噜噜久久久xxx| 性欧美xxxx视频在线观看| 97在线精品国自产拍中文| 中文字幕精品www乱入免费视频| 91九色精品视频| 欧美激情精品久久久久久黑人| 国产日韩欧美91| 日本最新高清不卡中文字幕| 国产精品久久久久久亚洲影视| 亚洲自拍偷拍第一页| 久热国产精品视频| 自拍偷拍亚洲在线| 亚洲片av在线| 亚洲一区免费网站| 欧美亚洲第一页| 亚洲成人黄色在线观看| 久久精视频免费在线久久完整在线看| 97成人精品区在线播放| 在线视频欧美日韩| 日韩黄色av网站| 中文字幕精品网| 亚洲一区亚洲二区|