dedecms 5.5版后臺(tái)可以開(kāi)啟偽靜態(tài)功能,但是就只文章頁(yè)會(huì)被偽靜態(tài),欄目頁(yè)的鏈接依然是動(dòng)態(tài)的,我們首先需要給虛擬主機(jī)添加上偽靜態(tài)規(guī)則,然后再去dedecms的相關(guān)文件中改掉相應(yīng)的函數(shù)。為什么要使用偽靜態(tài)?
首先我們給虛擬主機(jī)加上偽靜態(tài)規(guī)則,Apache和IIS的詳細(xì)設(shè)置如下,虛擬主機(jī)是否支持偽靜態(tài),請(qǐng)咨詢你的虛擬主機(jī)提供商。
如果是Apache的服務(wù)器,就在.htaccess里面寫(xiě)上
代碼如下:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule index\.html /index\.php
RewriteRule plus/list-([0-9]+)\.html$ /plus/list.php?tid=$1
RewriteRule plus/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?arcID=$1&pageno=$3
RewriteRule plus/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
</IfModule>
IIS的服務(wù)器,在httpd.ini里面寫(xiě)上,前提是要服務(wù)器安裝過(guò)ISAPI Rewrite
代碼如下:
[ISAPI_Rewrite]
# 緩存3600秒 = 1 小時(shí)(hour)
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^(.*)/index\.html $1/index\.php
RewriteRule ^(.*)/plus/list-([0-9]+)\.html $1/plus/list\.php\?tid=$2
RewriteRule ^(.*)/plus/list-([0-9]+)-([0-9]+)-([0-9]+)\.html $1/plus/list\.php\?tid=$2&TotalResult=$3&PageNo=$4
RewriteRule ^(.*)/plus/view-([0-9]+)-([0-9]+)\.html $1/plus/view\.php\?arcID=$2&pageno=$3
然后我們修改dedecms的程序,打開(kāi)include\channelunit.func.php
查找
代碼如下:
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
替換為
代碼如下:
$reurl = $GLOBALS['cfg_phpurl']."/list-".$typeid.".html";
以上修改適用于dedecms 5.5版,其他版本可能稍微有些區(qū)別。
2025國(guó)考·省考課程試聽(tīng)報(bào)名