POST TIME:2020-04-10 20:25
最近,筆者朋友發(fā)現(xiàn)用織夢(mèng)做的網(wǎng)站空間不斷增大,發(fā)現(xiàn)要更新一下文檔,需要花費(fèi)半個(gè)小時(shí)的時(shí)間,就思考:有沒(méi)有方法可以簡(jiǎn)單些的,所改即所見(jiàn),那多方便啊。但是當(dāng)初選擇織夢(mèng),就是看好它的靜態(tài)頁(yè)面,速度快,不想使用動(dòng)態(tài)的頁(yè)面,但現(xiàn)在必須研究一番,終于找到了織夢(mèng)偽靜態(tài)的方法,不用等待漫長(zhǎng)的更新時(shí)間,潮汕新聞網(wǎng)于a5首發(fā),跟各位朋友分享下。好了,開(kāi)始我們的織夢(mèng)偽靜態(tài)設(shè)置吧,一共分為三步:
第一步:檢查自己的空間是否支持偽靜態(tài)規(guī)則,如果是虛擬主機(jī),可以詢問(wèn)主機(jī)商的客服,如果是vps和服務(wù)器,則自己動(dòng)手設(shè)置即可。
首先把下面的偽靜態(tài)規(guī)則給保存下來(lái)。
下面以Apache服務(wù)器為例:
Apache服務(wù)器偽靜態(tài)需要在根目錄的.htaccess文件中加入相應(yīng)偽靜態(tài)規(guī)則即可。
打開(kāi).htaccess文件,加入如下規(guī)則:
#提供部分規(guī)則作參考
RewriteRule ^category/list-([0-9]+)\.html$ /plus/list.php?tid=$1
RewriteRule ^category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
RewriteRule ^archives/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?arcID=$1&pageno=$2
如果沒(méi)有.htaccess,自行用文本建立一個(gè)空文檔,自己寫(xiě)入,保存為.htaccess即可,記得上傳到根目錄。
第二步,織夢(mèng)后臺(tái)設(shè)置
1、登錄織夢(mèng)的后臺(tái),到“后臺(tái)-系統(tǒng)參數(shù)-核心設(shè)置-是否使用偽靜態(tài)”中選擇“是”,表示我們?cè)诤笈_(tái)開(kāi)啟了偽靜態(tài);
2、創(chuàng)建欄目或批量增加欄目時(shí),欄目列表選項(xiàng):選擇“動(dòng)態(tài)頁(yè)”;添加新文章時(shí),發(fā)布選項(xiàng):選擇“僅動(dòng)態(tài)瀏覽 ”。
3、如果你的網(wǎng)站已經(jīng)存在生成的靜態(tài)欄目或文章HTML,那么需要關(guān)閉生成靜態(tài)的頁(yè)面,在后臺(tái)-系統(tǒng)-SQL命令行工具中執(zhí)行如下語(yǔ)句:update dede_archives set ismake=-1;update dede_arctype set isdefault=-1;(這兩個(gè)命令讓靜態(tài)的頁(yè)面變成動(dòng)態(tài)的頁(yè)面,讓靜態(tài)的欄目變成動(dòng)態(tài)的欄目,是偽靜態(tài)關(guān)鍵的兩個(gè)步驟,其中,dede就是你安裝時(shí)的數(shù)據(jù)表前綴,根據(jù)實(shí)際情況替換。)
第三步,其他手動(dòng)設(shè)置
1、 把站點(diǎn)根目錄下index.html刪除,以后不更新主頁(yè)HTML即可,當(dāng)然你也可以選擇不使用動(dòng)態(tài)首頁(yè)。
2、DedeCms V5.7的為例,打開(kāi)/include/helpers/channelunit.helper.php。
將GetFileName()中的如下代碼:
//動(dòng)態(tài)文章
if($cfg_rewrite == 'Y')
{
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
}替換為
//動(dòng)態(tài)文章
if($cfg_rewrite == 'Y')
{
return "/archives/view-".$aid.'-1.html';
}
2、將GetTypeUrl()中的如下代碼:
//動(dòng)態(tài)
$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;替換為
//動(dòng)態(tài)
$reurl = "/category/list-".$typeid.".html";這步必須修改,即讓你的頻道或是列表頁(yè)URL變更為/category/list-1.html形式。
3、DedeCms列表分頁(yè)偽靜態(tài)
打開(kāi)/include/arc.listview.class.php,找到獲取動(dòng)態(tài)的分頁(yè)列表GetPageListDM()函數(shù)末尾處:
$plist = str_replace('.php?tid=', '-', $plist);替換為
$plist = str_replace('plus', 'category', $plist);//將默認(rèn)的plus替換成category
$plist = str_replace('.php?tid=', '-', $plist);將列表分頁(yè)默認(rèn)鏈接格式/plus/list-1-2-1.html修改為/category/list-1-2-1.html,這步也可以不作更改。
提醒:1、如果是織夢(mèng)其他類(lèi)型欄目的偽靜態(tài)設(shè)置,基本原理也是這樣,比如問(wèn)答類(lèi)模塊欄目、商城類(lèi)模塊欄目的設(shè)置等等。
2、事實(shí)上,開(kāi)啟DedeCms偽靜態(tài)支持并不能完全在后臺(tái)配置,有很多地方還是需要手動(dòng)修改的,不建議菜鳥(niǎo)操作。
3、5.3、5.5和5.6的channelunit.helper.php文件需要手動(dòng)搜索下,再自行修改,路徑跟5.7的不一樣。
雖然都是靜態(tài)生成,結(jié)尾后綴名都是.html,收錄都是一樣的,便于百度的收錄,但是區(qū)別還是蠻大的。
同時(shí)說(shuō)說(shuō)織夢(mèng)偽靜態(tài)與靜態(tài)生成的區(qū)別:
(1)偽靜態(tài)其實(shí)還是動(dòng)態(tài)頁(yè)面,只是結(jié)尾后綴名變成了.html,看起來(lái)更像靜態(tài)頁(yè)面,搜索引擎更加喜歡而已。
(2)偽靜態(tài)的文件修改,不用更新全部頁(yè)面,特別是修改某個(gè)文件,不用整站都生成,比如修改廣告位,不用花時(shí)間去更新,所改即可馬上看到。
(3)偽靜態(tài)在后期文件較大、較多的情況下,便于網(wǎng)站的維護(hù)。
(4)偽靜態(tài)的維護(hù)比純靜態(tài)簡(jiǎn)單,但是占用cpu的頻率來(lái)說(shuō),我們都知道,純靜態(tài)的頁(yè)面比動(dòng)態(tài)、偽靜態(tài)的頁(yè)面占用cpu少。
好了,本文由潮汕新聞網(wǎng)_普寧新聞、揭西新聞、揭東新聞的首席平臺(tái)http://chaoshannews.com/在a5首發(fā)。到此為止,基本就完成了織夢(mèng)的首頁(yè)、文章頁(yè)、列表頁(yè)的偽靜態(tài)設(shè)置。