ASP徹底成功實現偽靜態化html

ASP徹底成功實現偽靜態化html

這段時間在網上待的時間較多!為了查尋關於成功實現ASP動態內部實質意義的靜態化處置花了我的多不多時間,滿眼看了下,大部分數是過載而來,幾乎雷同,主要有以下幾種辦法:

1 用手續寫到硬盤.ASP FS對象的文件流處置.每個文章都有實際的途徑.假如要宣布數量多內部實質意義,則需求大容積空間,並且非常不好保護,改正都不便,益處在於減緩服務器的過訪負擔,容易被搜索引擎網站收錄,大大減損並避免黑客殲擊,稍有規模的網站都所有靜態化了,如新浪,搜狐等.

2 組件如ISAPI_Rewrite重寫.有自個兒服務器的站長還好辦,虛擬主機的朋友就稍麻煩,錯非煩請服務商安裝這個插件,再將手續參變量提交處理服務器成功實現轉化,看中去是靜態化了,其實是用靜態途徑過訪數值庫的內部實質意義.對於搜索引擎網站收益有一定效用.並且很多站長正是為此為苦苦尋覓.

3 第三種比較假就是把show.asp?id=26 轉成show.asp?/26.html這麼做或許對搜索引擎網站來說有些效用,然而防安全灌注一點兒效用也沒有.但只要做好防備辦公,這種辦法仍然比較適應大部分數虛擬主機的站長們.我這處就重點紹介運用第三種辦法來成功實現靜態化處置.

本實際的例子成功實現效果:

————–

一 准備辦公

在網站目次新建文件夾news,並新建一個主頁文件index.asp,數值庫data.mdb(字段id,Title,Content,)及ConnDB.asp

二 代碼成功實現

數值連署文件ConnDB.asp

百分之百
dim conn
dbpath=data.mdb
Set conn = Server.CreateObject(ADODB.Connection)
connstr=Provider=Microsoft.Jet.OLEDB.4.0;Data Source= Server.MapPath(dbpath)
conn.open connstr
If Err Then
err.Clear
Set conn = Nothing
Response.Write 數值庫連署出錯,請稍候過訪。
Response.End
End If
‘新聞閱覽板塊
Dim News_title,News_content
Sub ReadNews()
set rs1=server.createobject(adodb.recordset)
sql1=select id,title,content from article where id= ID
rs1.open sql1,conn,3,3
News_title=rs1(title)
News_content=rs1(content)
rs1.close
set rs1=Nothing
End Sub
百分之百

 

news-list.asp


!–#include file=ConnDB.asp–
ol
百分之百
Set rs=server.CreateObject(adodb.recordset)
sql=select * from Article
rs.open sql,conn,1,1
do while not rs.eof
百分之百
lia href=news/?/百分之百=rs(id)百分之百.html百分之百=left(trim(rs(title)),30)百分之百/a/li _fcksavedurl=news/?/百分之百=rs(id)百分之百.html百分之百=left(trim(rs(title)),30)百分之百/a/li
百分之百
rs.movenext
loop
rs.close
set rs=Nothing
百分之百
/ol

 

好了,如今編著新聞正文閱覽頁面news/index.asp

index.asp

!–#include file=ConnDB.asp–

百分之百
id=request.QueryString(id)
If id= Then
Pater=Request.ServerVariables(query_string)
id=Int(replace(replace(Pater,/,),.html,)) ‘replace調換函數,如將html和/替成空的
End If
Call ReadNews()
百分之百
div
b百分之百= News_title百分之百/bbr / ‘正題
百分之百=News_content百分之百 ‘正文
/div

 

這麼成功實現的效果如: 我們曉得Windows文件夾起名稱規則

是不准許裡面含有?的所以在這處只起視物感覺哄弄的效用.

一樣我們能否將?經過replace函數改換成這種效果: 呢?

這是我到現在為止總結概括出來的,准備用在我的主頁上,演習地址:(未完),當然,我信任會有更好的解決辦法,假如有興致的朋友請來本站交流.