Discuz教程网

分享Discuz 3.0官方自动获取的伪静态规则

[复制链接]
authicon PxoZZDsF 发表于 2013-3-29 01:13:15 | 显示全部楼层 |阅读模式
很多站长安装论坛后都会设置SEO伪静态,Discuz 3.0 在后台全局里面勾选并开启SEO伪静态之后可以自动获取相应的伪静态规则的,不过由于各种原因自动获取规则后部分论坛的伪静态url页面都变成404错误提示页面了,所以还是自己把伪静态规则老老实实添加到根目录吧。
以下是X3.0版官方提供的默认伪静态规则,不会添加的新站长可以去参照一下2.0或2.5版的伪静态规则添加方法。
Apache Web Server(独立主机用户)
  1. RewriteEngine On
  2. RewriteCond %{QUERY_STRING} ^(.*)$
  3. RewriteRule ^(.*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2&%1
  4. RewriteCond %{QUERY_STRING} ^(.*)$
  5. RewriteRule ^(.*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3&%1
  6. RewriteCond %{QUERY_STRING} ^(.*)$
  7. RewriteRule ^(.*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3&%1
  8. RewriteCond %{QUERY_STRING} ^(.*)$
  9. RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3&%1
  10. RewriteCond %{QUERY_STRING} ^(.*)$
  11. RewriteRule ^(.*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3&%1
  12. RewriteCond %{QUERY_STRING} ^(.*)$
  13. RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3&%1
  14. RewriteCond %{QUERY_STRING} ^(.*)$
  15. RewriteRule ^(.*)/blog-([0-9]+)-([0-9]+).html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3&%1
  16. RewriteCond %{QUERY_STRING} ^(.*)$
  17. RewriteRule ^(.*)/(fid|tid)-([0-9]+).html$ $1/index.php?action=$2&value=$3&%1
复制代码
Apache Web Server(虚拟主机用户)
  1. # 将 RewriteEngine 模式打开
  2. RewriteEngine On
  3. # 修改以下语句中的 /discuz 为您的论坛目录地址,如果程序放在根目录中,请将 /discuz 修改为 /
  4. RewriteBase /discuz
  5. # Rewrite 系统规则请勿修改
  6. RewriteCond %{QUERY_STRING} ^(.*)$
  7. RewriteRule ^topic-(.+).html$ portal.php?mod=topic&topic=$1&%1
  8. RewriteCond %{QUERY_STRING} ^(.*)$
  9. RewriteRule ^article-([0-9]+)-([0-9]+).html$ portal.php?mod=view&aid=$1&page=$2&%1
  10. RewriteCond %{QUERY_STRING} ^(.*)$
  11. RewriteRule ^forum-(w+)-([0-9]+).html$ forum.php?mod=forumdisplay&fid=$1&page=$2&%1
  12. RewriteCond %{QUERY_STRING} ^(.*)$
  13. RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+).html$ forum.php?mod=viewthread&tid=$1&extra=page%3D$3&page=$2&%1
  14. RewriteCond %{QUERY_STRING} ^(.*)$
  15. RewriteRule ^group-([0-9]+)-([0-9]+).html$ forum.php?mod=group&fid=$1&page=$2&%1
  16. RewriteCond %{QUERY_STRING} ^(.*)$
  17. RewriteRule ^space-(username|uid)-(.+).html$ home.php?mod=space&$1=$2&%1
  18. RewriteCond %{QUERY_STRING} ^(.*)$
  19. RewriteRule ^blog-([0-9]+)-([0-9]+).html$ home.php?mod=space&uid=$1&do=blog&id=$2&%1
  20. RewriteCond %{QUERY_STRING} ^(.*)$
  21. RewriteRule ^archiver/(fid|tid)-([0-9]+).html$ archiver/index.php?action=$1&value=$2&%1
复制代码
IIS Web Server(独立主机用户)
  1. [ISAPI_Rewrite]
  2. # 3600 = 1 hour
  3. CacheClockRate 3600
  4. RepeatLimit 32
  5. # Protect httpd.ini and httpd.parse.errors files
  6. # from accessing through HTTP
  7. RewriteRule ^(.*)/topic-(.+).html(?(.*))*$ $1/portal.php?mod=topic&topic=$2&$4
  8. RewriteRule ^(.*)/article-([0-9]+)-([0-9]+).html(?(.*))*$ $1/portal.php?mod=view&aid=$2&page=$3&$5
  9. RewriteRule ^(.*)/forum-(w+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3&$5
  10. RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3&$6
  11. RewriteRule ^(.*)/group-([0-9]+)-([0-9]+).html(?(.*))*$ $1/forum.php?mod=group&fid=$2&page=$3&$5
  12. RewriteRule ^(.*)/space-(username|uid)-(.+).html(?(.*))*$ $1/home.php?mod=space&$2=$3&$5
  13. RewriteRule ^(.*)/blog-([0-9]+)-([0-9]+).html(?(.*))*$ $1/home.php?mod=space&uid=$2&do=blog&id=$3&$5
  14. RewriteRule ^(.*)/(fid|tid)-([0-9]+).html(?(.*))*$ $1/index.php?action=$2&value=$3&$5
复制代码
IIS7 Web Server(独立主机用户)
复制代码
Zeus Web Server
  1. match URL into $ with ^(.*)/topic-(.+).html?*(.*)$
  2. if matched then
  3. set URL = $1/portal.php?mod=topic&topic=$2&$3
  4. endif
  5. match URL into $ with ^(.*)/article-([0-9]+)-([0-9]+).html?*(.*)$
  6. if matched then
  7. set URL = $1/portal.php?mod=view&aid=$2&page=$3&$4
  8. endif
  9. match URL into $ with ^(.*)/forum-(w+)-([0-9]+).html?*(.*)$
  10. if matched then
  11. set URL = $1/forum.php?mod=forumdisplay&fid=$2&page=$3&$4
  12. endif
  13. match URL into $ with ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html?*(.*)$
  14. if matched then
  15. set URL = $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3&$5
  16. endif
  17. match URL into $ with ^(.*)/group-([0-9]+)-([0-9]+).html?*(.*)$
  18. if matched then
  19. set URL = $1/forum.php?mod=group&fid=$2&page=$3&$4
  20. endif
  21. match URL into $ with ^(.*)/space-(username|uid)-(.+).html?*(.*)$
  22. if matched then
  23. set URL = $1/home.php?mod=space&$2=$3&$4
  24. endif
  25. match URL into $ with ^(.*)/blog-([0-9]+)-([0-9]+).html?*(.*)$
  26. if matched then
  27. set URL = $1/home.php?mod=space&uid=$2&do=blog&id=$3&$4
  28. endif
  29. match URL into $ with ^(.*)/(fid|tid)-([0-9]+).html?*(.*)$
  30. if matched then
  31. set URL = $1/index.php?action=$2&value=$3&$4
复制代码
Nginx Web Server
  1. rewrite ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
  2. rewrite ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
  3. rewrite ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
  4. rewrite ^([^.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
  5. rewrite ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
  6. rewrite ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
  7. rewrite ^([^.]*)/blog-([0-9]+)-([0-9]+).html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
  8. rewrite ^([^.]*)/(fid|tid)-([0-9]+).html$ $1/index.php?action=$2&value=$3 last;
  9. if (!-e $request_filename) {
  10. return 404;
  11. }
复制代码



上一篇:鼠标放在列表会员头像上无法正常显示,显示:“内部错误,无法显示此内容”
下一篇:DZ 2.5去掉portal.php后缀,希望官方接手
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1314学习网 ( 浙ICP备10214163号 )

GMT+8, 2025-5-4 15:09

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表