這里,只談Linux下的URL靜態化處理.
1. 確保你的apache 下已經加載了Rewrite模塊,確保httpd.conf中已經包含mod_rewrite.so的加載語句如下:
LoadModule rewrite_module modules/mod_rewrite.so
2. 在虛擬主機中添加Directory:
- <Directory /var/www/xxr.so/>
- Options FollowSymLinks
- AllowOverride All
- order allow,deny
- Allow from all
- </Directory>
3. 在網站根目錄下,創建 .htaccess文件,內容如下:
# 將 RewriteEngine 模式打開
RewriteEngine On
# 修改以下語句中的 /discuz 為你的論壇目錄地址,如果程序放在根目錄中,請將 /discuz 修改為 /
RewriteBase /discuz
# 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 ^blog-([0-9]+)-([0-9]+)/.html$ home.php?mod=space&uid=$1&do=blog&id=$2&%1
- RewriteCond %{QUERY_STRING} ^(.*)$
- RewriteRule ^archiver/(fid|tid)-([0-9]+)/.html$ archiver/index.php?action=$1&value=$2&%1 //Vevb.com
注意一定要修改 RewriteBase.
4.修改 Disciz x2 -seo 設置 把所有項選擇為可用,Rewrite兼容性選否.
到此為止你的Discuz 的鏈接地址就會變成類似這樣的:
http://bbs.Vevb.com.cn/forum-321-1.html
http://bbs.Vevb.com.cn/thread-149418-1-1.html
怎么樣,趕快試試吧.
新聞熱點
疑難解答