搜尋引擎|最佳化|搜尋引擎|最佳化
今天對 車米網 的論壇作了最佳化,發現動網論壇7.0本來就考慮到了搜尋引擎的問題,只需要簡單修改就可以很好的最佳化了.
動網論壇採用javascript+模版的方式顯示頁面,伺服器將沒有深加工的資料和js代碼一起發送到用戶端解析,減輕了伺服器負擔,但是搜尋引擎一般不會解析javascript代碼的,不過動網論壇的主要頁面都有判斷瀏覽器類型,如果是搜尋引擎,自動跳轉到專門為瀏覽器顯示的頁面,但是這些頁面做得不是太好,下面是我修改的結果:
昨天我把論壇的meta標籤的description部分去掉,google發現這個標籤後就會忽略下面的內容,直接區標籤中的內容。
修改index.asp:
將函數Sub Show_Index_Footer()中的
Dim BrowserType
If BrowserType.IsSearch Then Response.redirect "indexNew.asp"
提升到index.asp的前面,讓頁面一檢測到是搜尋引擎就跳轉到最佳化後的頁面,原來那樣子的結果是google僅僅抓取了Show_Index_Footer()中的資訊,前面的都給忽略了。
修改indexnew.asp
將Dvbbs.head()改為Dvbbs.head()
注釋掉
Dvbbs.ActiveOnline()
Show_Index_Top
Show_Index_Footer
Response.Write Replace(template.html(9),"{$Getlink}",Getlink())
If Dvbbs.Forum_setting(29)="1" Then Call birthuser()
Dvbbs.Footer()
Response.Write Dvbbs.value
Response.Write template.html(8)(1)
這樣子跳轉後的首頁顯示的就相對比較簡單了,但是代碼還是有些冗餘,如果想再精簡些,就不要用dvbbs的模版了,直接用asp產生靜態頁面,能去掉的都去掉。
同樣修改list_show.asp
將Dvbbs.head()改為Dvbbs.head()
注釋掉
News
Board_Online
Show_List_Footer
Dvbbs.ActiveOnline()
Dvbbs.Footer()
再修改printpage.asp
如果你的論壇需要註冊使用者才能瀏覽,而你又要搜尋引擎能夠抓取資訊的話,把If Dvbbs.GroupSetting(2)="0" Then Dvbbs.AddErrcode(31)這行注釋掉。
其他的沒什麼好改的,這個頁面的模版已經做得非常精簡了,你可以試著修改page_postjob模版來增加些其他的串連。
下面作一個更有實際效果的索引頁面,很多不錯的php論壇都有這樣的頁面,效果很好:
建立一個目錄,隨便什麼,然後在裡面建立一個index.asp檔案,這個檔案的代碼我直接用了動網論壇的newtopic.asp,把裡面的js去掉就行了:
<!--#include file="../conn.asp"-->
<!--#Include File="../inc/Dv_ClsMain.asp"-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>車米網</title>
<link rel="stylesheet" href="../style.css" type="text/css" />
</head>
<body>
<div class="main">
<div class="top"><a href="../index.asp">車米網</a> - 論壇新貼</div>
<div class="body">
<%
'DVBBS 7.0 動網論壇首頁調用-----主題調用
dim bbsurl,lockboardid,picurl
'############以下為修改項######################
dim lockurl
lockurl=""
'只允許調用網址,要以"HTTP://"開頭,為空白則不開放此功能.(可允許多網址限制,要以","分隔。)
'例如只允許此兩個網址調用: lockurl="http://www.artistsky.net/,http://www.artbbs.net/"
bbsurl="http://bbs.my-car.cn/" '請填寫你論壇的正確地址,要以"HTTP://"開頭
lockboardid="1,2,3" '請填寫限制調用的論壇版塊ID,用逗號隔開。(當lock參數為1,2時生效)
picurl="http://bbs.my-car.cn/skins/default/topicface/" '心情表徵圖目錄位址
'############以上為修改項######################
'bbsurl=getservepath(request.ServerVariables("server_name")&request.ServerVariables("URL"))
'function getservepath(str)
'dim tmpstr
'tmpstr=split(str,"/")
'getservepath="http://"&replace(str, tmpstr(ubound(tmpstr)), "")
'end function
'*************************************
'上傳到與CONN.ASP同級的目錄下
'以上地址參數一定要修改,否則所調用的連結是去了以上的論壇.
'若有問題,可以運行一起上傳的newscode.ASP檔案進行調試(newscode.ASP運行前要修改調用參數)
' FSSUNWIN 2003.12.31
'*************************************
'if trim(lockurl)<>"" and checkserver(lockurl)=false then
' response.write "document.write ('資料被保護,禁止被其他網站調用!"
' response.end
'end if
Private function checkserver(str)
dim i,servername
checkserver=false
if str="" then exit function
str=split(Cstr(str),",")
servername=Request.ServerVariables("HTTP_REFERER")
for i=0 to Ubound(str)
if right(str(i),1)="/" then str(i)=left(trim(str(i)),len(str(i))-1)
if Lcase(left(servername,len(str(i))))=Lcase(str(i)) then
checkserver=true
exit for
else
checkserver=false
end if
next
end function
dim rs,sql
dim orders,reply,topic,isbest,lock,board,action,info,tlen,showpic
dim bname,ars
dim postinfo,postname,POSTTIME
dim NowUseBbs,boardname,boardid
dim i,k,n,sdate,searchdate
i=0:k=0
lock=0 'cint(trim(request("lock")))
orders=4 'trim(request("orders"))
boardid="all" 'trim(request("boardid"))
sdate=3 'trim(request("sdate"))
action=1 'cint(request("action"))
info=3 'request("info")
tlen=16 'request("tlen")
reply=0 'request("reply")
showpic=0 'request("showpic")
n=100 'trim(request("n"))
bname=0 'request("bname")
if n<>"" and IsNumeric(n) then
n=cint(n)
else
n=1
end if
if orders=1 then
orders="hits desc,"
Elseif orders=2 or orders=3 then
orders="dateandtime desc,"
end if
If boar