最近有一個朋友問我偽靜態如何設定,他是用 Discuzx2.5 的程式搭建的一個論壇,由於他是剛開始做站的新手,所以不是太懂,最近 dx2.5 的版本釋出了,下面我來分享一下 dx2.5 論壇 win 主機與 linux 主機偽靜態規則的設定方法!

windows 主機設定方法:

第一步:建立一個名為 httpd.ini 的檔案,可以先在電腦上面新建一個文字,然後將下面的這些程式碼複製到本文裡面,再儲存。

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files

# from accessing through HTTP

RewriteRule ^(.*)/topic-(.+).html(?(.*))*$ $1/portal.php?mod=topic&topic=$2&$4

RewriteRule ^(.*)/article-([0-9]+)-([0-9]+).html(?(.*))*$ $1/portal.php?mod=view&aid=$2&page=$3&$5

RewriteRule ^(.*)/forum-(w+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3&$5

RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3&$6

RewriteRule ^(.*)/group-([0-9]+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=group&fid=$2&page=$3&$5

RewriteRule ^(.*)/space-(username|uid)-(.+).html(?(.*))*$ $1/home.php?mod=space&$2=$3&$5

RewriteRule ^(.*)/blog-([0-9]+)-([0-9]+).html(?(.*))*$ $1/home.php?mod=space&uid=$2&do=blog&id=$3&$5

RewriteRule ^(.*)/(fid|tid)-([0-9]+).html(?(.*))*$ $1/index.php?action=$2&value=$3&$5

將這些程式碼儲存到文字裡面以後,再將文字重新命名為 httpd.ini ,然後再上傳到網站的根目錄!

第二步:接下來,我們再來到論壇的後臺,全域性—SEO 設定—URL 偽靜態,然後將裡面的框框全部打勾,如下圖:

全部打鉤好後再點選提交,OK,偽靜態設定成功,然後再更新下論壇的快取即可看到效果!

linux 主機設定方法:

如果您的空間是 linux 主機,那麼,您就需要將下面的這些 URL 靜態化規則寫入您網站的根目錄下的.htaccess 檔案裡面,規則如下:

RewriteEngine On

RewriteBase /

# Rewrite 系統規則請勿修改

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^topic-(.+).html$ portal.php?mod=topic&topic=$1&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^article-([0-9]+)-([0-9]+).html$ portal.php?mod=view&aid=$1&page=$2&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^forum-(w+)-([0-9]+).html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+).html$ forum.php?mod=viewthread&tid=$1&extra=page%3D$3&page=$2&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^group-([0-9]+)-([0-9]+).html$ forum.php?mod=group&fid=$1&page=$2&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^space-(username|uid)-(.+).html$ home.php?mod=space&$1=$2&%1

RewriteCond %{QUERY_STRING} ^(.*)$

RewriteRule ^([a-z]+)-(.+).html$ $1.php?rewrite=$2&%1

可以先新建一個文字,然後將這些程式碼複製入文字裡面,並將文字名字儲存為.htaccess,然後再上傳至網站的根目錄下,上傳以後也和上面一樣來到論壇後臺,全域性—SEO 設定—URL 偽靜態,然後將裡面的框框全部打勾,再更新下快取即可看到偽靜態的效果!

不過,要想設定偽靜態,前提是需要您的虛擬主機支援偽靜態,如果您的虛擬主機不支援偽靜態,那麼設定了也沒用的!