返回列表 回覆 發文

Discuz! URL 靜態化的使用設定方法

以下內容摘自使用手冊:

Discuz! 4.1.0 新增了 Discuz! URL 靜態化(以下簡稱 URL靜態化)功能。此功能可以將 Discuz! Archiver及部分常用頁面(如forumdisplay.php、viewthread.php、viewpro.php 等)進行 URL靜態化轉換,形成類似 http://www.demo.net/discuz/forum-1-1.html形式的超級鏈接,從而使論壇內容更容易被搜索引擎挖掘,提高被收錄的機率。

使用注意事項
  • 您可以通過 系統設置 中 Discuz! 選項 來控制 URL 靜態化 的打開或關閉及其工作狀態
  • 本功能對服務器環境有特殊要求,獨立主機用戶需要對 Web 服務器增加相應的 Rewrite規則,因此需要服務器權限才可使用。對於虛擬主機用戶,您需要向您的空間服務商進行咨詢:空間是否支持 Rewrite 以及是否支持對站點目錄中.htaccess 的文件解析,只有滿足這兩條件,URL 靜態化 功能才會生效。
  • 打開 URL 靜態化 後,論壇一些常用鏈接會變成類似http://www.demo.net/discuz/forum-1-1.html 形式,如果您的服務器環境不支持或者尚未配置好,訪問這些鏈接會出現「網頁無法顯示」的錯誤信息,論壇將無法正常訪問。發生無法訪問的現象時,請您進入管理後台,關閉 URL 靜態化 功能,論壇即可恢復正常狀態。

URL 靜態化 工作狀態
    在 Discuz! 選項 中提供了四種 URL 靜態化 的工作狀態,分別是:

    • 不啟用 URL 靜態化 功能。
    • Discuz! Archiver 靜態化
      當論壇啟用 Archiver 功能時,Archiver 內的所有鏈接均採用 *.html 形式。
    • 普通頁面靜態化
      對論壇常用頁面(如 forumdisplay.php、viewthread.php、viewpro.php、space.php 等)進行 URL 靜態化轉換。
    • Archiver 和普通頁面均靜態化
      對 Archiver 以及論壇常用頁面(如 forumdisplay.php、viewthread.php、viewpro.php、space.php 等)進行 URL 靜態化轉換。


[ 本帖最後由 chien 於 2008-11-13 18:45 編輯 ]
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
設定方法:
Discuz!6 版本:先在後台的選項,選擇所要靜態化的選項,如上所述共有四個選項,第一項是不做靜態化,2-4項則是想要靜態化的頁面。

Discuz! 7.0.0版本的後台選項分的比較細,在全局->優化設置選項裡,選擇想要優化的頁面:
  • 主題列表頁面(forumdisplay.php)靜態化
  • 主題內容頁面(viewthread.php)靜態化
  • 個人資料頁面(space.php)靜態化
  • 標籤頁面(tag.php)靜態化
  • Discuz! Archiver 靜態化

在免費空間的根目錄, 新建立一個.htaccess的文件, 或已經有這個文件加在後面即可, 將以下內容填入, 並將/discuz 修改為 /後存檔, 應該就可以使用靜態化了。其中必須將.htaccess改變屬性(chmod)為644。
如果你的論壇程式不是放在根目錄的話, 要將/discuz 修改為 /論壇目錄
    # 將 RewriteEngine 模式打開
    RewriteEngine On

    # 修改以下語句中的 /discuz 為你的論壇目錄地址,如果程序放在根目錄中,請將 /discuz 修改為 /
    RewriteBase /discuz

    # Rewrite 系統規則請勿修改
    RewriteRule ^archiver/((fid|tid)-[\w\-]+\.html)$ archiver/index.php?$1
    RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2
    RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2
    RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2
    RewriteRule ^tag-(.+)\.html$ tag.php?name=$1
懶人包下載位址:.htaccess.zip - 0.00MB
下載後,將解壓後的檔案上傳至空間的根目錄即可使用,請注意你可能需要修改你的論壇目錄地址。如果你是簡體中文的使用者, 可能會看到#旁邊都是亂碼, 直接刪除或不必理會。
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
設定靜態化後,本來有動態變數的網址,
http://bbs2.erufa.com/viewthread.php?tid=136&page=1
變成一個單純的頁面網址,
http://bbs2.erufa.com/thread-136-1-1.html
以上兩個網址其實是同一頁面。

靜態化頁面有利於搜尋引擎收錄。

[ 本帖最後由 chien 於 2009-4-21 23:11 編輯 ]
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
感謝你的教學
可是我發現原本的版塊竟不去ㄚ
目錄地址是根目錄嗎

回復 6# 的帖子

論壇目錄地址就是論壇檔案放在空間裡的第一層目錄名稱
如果論壇的檔案與資料夾是直接放在htdocs裡, 就是/, 也就是根目錄
如果htdocs裡另建立了目錄(如mybbs), 而把所有論壇檔案放在這個目錄裡, 那麼論壇目錄地址就是這個目錄名稱/mybbs

[ 本帖最後由 chien 於 2009-10-14 20:48 編輯 ]
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
什麼事後存檔
    # 將 RewriteEngine 模式打開
    RewriteEngine On

    # 修改以下語句中的 /discuz 為你的論壇目錄地址,如果程序放在根目錄中,請將 /discuz 修改為 /
    RewriteBase /discuz

    # Rewrite 系統規則請勿修改
    RewriteRule ^archiver/((fid|tid)-[\w\-]+\.html)$ archiver/index.php?$1
    RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2
    RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2
    RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2
    RewriteRule ^tag-(.+)\.html$ tag.php?name=$1
以上的句子都放上去媽,國語也是媽???
例如:
# 修改以下語句中的 /discuz 為你的論壇目錄地址,如果程序放在根目錄中,請將 /discuz 修改為 /
    RewriteBase /discuz
能做給我媽

回復 8# 的帖子

不必害怕, 在本機新建一個檔案直接將引用裡的內容填入,
唯一要修改的就看你的論壇是放在哪個目錄裡, 修改你的論壇目錄地址
並存檔命名為.htaccess
將它上傳放在論壇目錄裡就可以了。

引用裡的#,
空間主機看的懂檔案裡寫的意思, 別為它擔心, #代表其後的文字都是註解的意思

再試試哩

[ 本帖最後由 chien 於 2009-10-15 14:21 編輯 ]
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
本人有用分域所以搞不懂他的根木物在哪
分域是啥麼勒?
檔案已上傳了, 下載試試吧
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!

回復 12# 的帖子

沒有下載位子阿

回復 13# 的帖子

抱歉沒說明, 放在2樓勒

[ 本帖最後由 chien 於 2009-10-22 15:14 編輯 ]
erufa.com免費空間 PHP MySQL
謝謝您的回覆與分享,是我們持續發帖的動力唷!
謝謝你的提供,我測試放在7.1會不會有問題
返回列表