由于織夢問答模塊升級,使用了新的URL形式,歷史版本的問答系統偽靜態規則已經不適用于新版了,這也DedeCMS 5.7問答偽靜態實現要解決的重點,DedeCMS 5.7問答偽靜態高級解決方案.
我們先來看下DedeCMS 5.7問答模塊的官方升級說明:
1)重構問答模塊,采用模塊MVC架構進行重構;
2)問答模塊支持偽靜態設置;
3)重新設計問答模塊前臺界面,新界面同系統整體界面一致;
4)客服中心采用新版問答模塊改版;
5)問答模塊增加對二級域名的支持,通過上述說明,結合DedeCMS V5.7的問答源碼,基本可以確定兩個信息:
1)DedeCMS 5.7問答模塊仍然支持偽靜態;
2)由于織夢問答模塊升級,使用了新的URL形式,歷史版本的問答系統偽靜態規則已經不適用于新版了,這也DedeCMS 5.7問答偽靜態實現要解決的重點。DedeCMS 5.7問答偽靜態高級解決方案
1)你的主機是否支持偽靜態?這點很重要,不然下面說再多也是白搭。簡單說明下,Apache服務器偽靜態實現需要借助.htaccess文件;IIS服務器偽靜態實現則需要加載Rewrite組件,然后配置httpd.ini文件;
2)DedeCMS V5.7管理后臺-系統-系統基本參數-模塊設置,“是否使用Rewrite”選擇“是”,“問答模塊的二級域名”填寫“ask”;
這里為什么要填寫問答模塊的二級域名?因為小拼的偽靜態修改方法是參考DedeCMS V5.5和5.6問答的URL形式,目標URL以“.html”結尾,相信對使用過歷史版本問答系統的朋友都不會陌生。
如:http://localhost/ask/question-4.html這樣的URL在DedeCMS V5.7中會有一個問題,許多以“?ct=”開頭的鏈接都會訪問不了,如“我的提問”、“我的回答”、“提高懸賞”、“編輯/刪除問題”等,會產生404錯誤頁面。
如:http://localhost/ask/question-4.html?ct=myask其實這種現象的產生,主要是模板里鏈接的路徑問題,采用的都是相對路徑。而啟用問答模塊的二級域名,再結合模板修改就可以很好的解決。當然,你也可以修改模板,實現問答全站偽靜態,只需多加幾條偽靜態規則即可。
3)DedeCMS 5.7問答偽靜態規則
IIS服務器偽靜態規則,在httpd.ini文件中加入如下代碼:
- #問答首頁
- #RewriteRule ^(.*)/index.html $1/index.php [I]
- #問答詳細頁
- RewriteRule ^(.*)/question-([0-9]+).html $1/?ct=question&askaid=$2 [I]
- #問答一級欄目
- RewriteRule ^(.*)/browser-1-([0-9]+).html $1/?ct=browser&tid=$2 [I]
- #問答一級欄目分頁
- RewriteRule ^(.*)/browser-1-([0-9]+)-page-([0-9]+).html $1/?ct=browser&tid=$2&page=$3 [I]
- #問答子欄目
- RewriteRule ^(.*)/browser-2-([0-9]+).html $1/?ct=browser&tid2=$2 [I]
- #問答子欄目分頁
- RewriteRule ^(.*)/browser-2-([0-9]+)-page-([0-9]+).html $1/?ct=browser&tid2=$2&page=$3 [I]
- # 精彩推薦、待解決問題、高懸賞問題、新解決問題、零回答問題、快到期問題(包括一級欄目、子欄目及其分頁)
- RewriteRule ^(.*)/browser-([0-9]+).html $1/?ct=browser&lm=$2 [I]
- RewriteRule ^(.*)/browser-([0-9]+)-page-([0-9]+).html $1/?ct=browser&lm=$2&page=$3 [I]
- RewriteRule ^(.*)/browser-1-([0-9]+)-([0-9]+).html $1/?ct=browser&tid=$2&lm=$3 [I]
- RewriteRule ^(.*)/browser-1-([0-9]+)-([0-9]+)-page-([0-9]+).html $1/?ct=browser&tid=$2&lm=$3&page=$4 [I]
- RewriteRule ^(.*)/browser-2-([0-9]+)-([0-9]+).html $1/?ct=browser&tid2=$2&lm=$3 [I]
- RewriteRule ^(.*)/browser-2-([0-9]+)-([0-9]+)-page-([0-9]+).html $1/?ct=browser&tid2=$2&lm=$3&page=$4 [I]
- #全部分類
- RewriteRule ^(.*)/type.html $1/?ct=type [I]
- #問答搜索 Vevb.com
- RewriteRule ^(.*)/search.html $1/?ct=search [I]
- #總積分排行 周積分上升排行 查看個人信息
- RewriteRule ^(.*)/myask-view-([0-9]+).html $1/?ct=myask&ac=view&mid=$2
[I]Apache服務器偽靜態規則,在.htaccess文件中加入如下代碼:
- RewriteRule ^index.html$ index.php
- RewriteRule ^question-([0-9]+).html$ ?ct=question&askaid=$1
- RewriteRule ^browser-1-([0-9]+).html$ ?ct=browser&tid=$1
- RewriteRule ^browser-1-([0-9]+)-page-([0-9]+).html$ ?ct=browser&tid=$2&page=$3
- RewriteRule ^browser-2-([0-9]+).html$ ?ct=browser&tid2=$1
- RewriteRule ^browser-2-([0-9]+)-page-([0-9]+).html$ ?ct=browser&tid2=$2&page=$3
- RewriteRule ^browser-([0-9]+).html$ ?ct=browser&lm=$1
- RewriteRule ^browser-([0-9]+)-page-([0-9]+).html$ ?ct=browser&lm=$1&page=$2
- RewriteRule ^browser-1-([0-9]+)-([0-9]+).html$ ?ct=browser&tid=$1&lm=$2
- RewriteRule ^browser-2-([0-9]+)-([0-9]+)-page-([0-9]+).html$ ?ct=browser&tid2=$1&lm=$2&page=$3
- RewriteRule ^browser-2-([0-9]+)-([0-9]+).html$ ?ct=browser&tid2=$2&lm=$3
- RewriteRule ^browser-2-([0-9]+)-([0-9]+)-page-([0-9]+).html$ ?ct=browser&tid2=$1&lm=$2&page=$3
- RewriteRule ^type$ ?ct=type
- RewriteRule ^search.html$ ?ct=search
- RewriteRule ^myask-view-([0-9]+).html$ ?ct=myask&ac=view&mid=$1
新聞熱點
疑難解答