国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

如何在asp中實現靜態頁面

2024-05-04 11:05:17
字體:
來源:轉載
供稿:網友

實現靜態html頁面的方法有很多,但并不是所有人都了解靜態頁面實現方法,那么現在錯新小編就為大家介紹如何在asp中實現靜態頁面,感興趣的朋友們來看看吧。

1、使用isapi_rewrite進行動態鏈接重寫html靜態網址。isapi_rewrite是一個dll組件,re_write是iis里的一個模塊。這個篩選器實現是通過正則表達式,將動態網頁網址映射成為靜態網址。如可將news.asp?id=95通過re_write將其轉換成news/95.html。映射的正則表達式在httpd.ini文件里進行設置。
舉個小小例:處理數據翻頁,那么寫法是:
more_<%=page%>_<%=type%>.html (注:page是翻頁頁數,type是數據類型)表現形式:more_1_95.html
如果翻下一頁,則為:more_2_95.html,繼續下一頁的循環,則是:
more_3_95.html,以此類推。
不過你需要在httpd.ini文件中增加以下代碼:
rewriterule /more_(d+)_(d+).html /jsp教程/more.asp?page=$1&type=$2 [n,i] 字串9
如果你的動態程序有多個參數需要傳遞,那么就增加多個(d+)即可,如下:
rewriterule /more_(d+)_(d+)_(d+).html /asp/more.asp?page=$1&type=$2&type2=$3 [n,i]
優點:在程序上基本不需做什么變化。麻煩:要實現這個需要對iis進行控制,所以當你租用別人的服務器時,則需要先跟服務商聯系。(當然這個是對asp而言,asp.net教程就不用——直接將dll程序集放到程序中的bin再適當的配置即可實現)
2、iis的404錯誤處理機制:通過自定義錯誤,轉向我們準備好的處理頁。不過這種可拓展性有待研究,對程序處理的統籌要求也高,不大適合實際應用的樣子。
首先,設置站點屬性-自定意錯誤
找到http錯誤404,然后編輯屬性->消息類型選中url->url填入"/index.asp",或您的錯誤處理頁面.
這樣,比如用戶或蜘蛛訪問http://cn/12345.html 時(12345為文章在數據庫教程的id).由于些頁面不存在,所以觸發了404錯誤.轉向了index.asp
在index.asp里加

復制代碼 代碼如下:

currdomain=request.servervariables("http_host") '當前訪問域名
currurl=replace(request.servervariables("query_string"),"404;http://"&currdomain&":80","") '當前訪問url


此時的currurl應該是:12345.html .
3.
1.新建一個文件夾info (因為最終訪問信息的頁面url為http://localhost/info/?1.html)
2.在info文件夾下新建一個default.asp文件(就是默認首頁的那個頁面)
default.asp文件的內容如下

?

復制代碼 代碼如下:

?


<%
currdomain=request.servervariables("http_host") '當前訪問域名
currurl=replace(request.servervariables("query_string"),"404;http://"&currdomain&"/info/?","") '當前訪問url
id=replace(currurl,".html","")
%>


其中id即是傳入的參數
如果是多個參數可以把url偽靜態化為info/?1-2-3.html
其中1,2,3各代表三個參數的值,分隔字符串分別提出即可。
真實html靜態頁面
把html代碼寫入到文件中然后生成.html格式的文件

?

復制代碼 代碼如下:

?


<%
  filename="test.htm"
  if request("body")<>"" then
  set fso = server.createobject("scripting.filesystemobject")
  set htmlwrite = fso.createtextfile(server.mappath(""filename""))
  htmlwrite.write "<html><head><title>" request.form("title") "</title></head>"
  htmlwrite.write "<body>輸出title內容: " request.form("title") "<br /> 輸出body內容:" request.form("body") "</body></html>"
  htmlwrite.close
  set fout=nothing
  set fso=nothing
  end if
  %>
  <form name="form" method="post" action="">
  <input name="title" value="title" size=26>
  <br>
  <textarea name="body">body</textarea>
  <br>
  <br>
  <input type="submit" name="submit" value="生成html">
  </form>


2、但是按照上面的方法生成html文件非常不方便,第二種方法就是利用模板技術,將模板中特殊代碼的值替換為從表單或是數據庫字段中接受過來的值,完成模板功能;將最終替換過的所有模板代碼生成html文件.這種技術采用得比較多,大部分的cms都是使用這類方法.
  template.htm ' //模板文件

?

?

這篇文章介紹了如何在asp中實現靜態頁面,有需要的朋友可以參考一下。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 娄底市| 洛川县| 双鸭山市| 荥阳市| 新乡市| 徐闻县| 钦州市| 洛扎县| 同心县| 汉源县| 丰顺县| 光山县| 吴川市| 广平县| 内丘县| 保德县| 怀柔区| 农安县| 廉江市| 卢氏县| 茂名市| 江西省| 合肥市| 五原县| 墨竹工卡县| 房山区| 南木林县| 汝阳县| 特克斯县| 青铜峡市| 犍为县| 南和县| 松滋市| 青川县| 武功县| 民权县| 高雄市| 通许县| 大关县| 科技| 保山市|