DedeCMS 5.7伪静态配置方法-dedecms教程

时间:2014-07-14
本文章来介绍关于DedeCMS 5.7问答伪静态高级解决方案,有需要了解的朋友可参考。 1)你的主机是否支持伪静态?这点很重要,不然下面说再多也是白搭。简单说明下,Apache服务器伪静态实现需要借助.htaccess文件;IIS服务器伪静态实现则需要加载Rewrite组件,然后配置httpd.ini文件; 延伸阅读:Windows2003 IIS6/7伪静态组件下载/安装/配置(附伪静态规则) 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] #问答搜索 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=$14) 修改DedeCMS 5.7问答模块码源和模板,以满足上面的伪静态规则,考虑到个别站长对HTML和PHP代码不太熟悉,下面直接把小拼修改好的问答模块共享出来: DedeCMS 5.7问答模块源码修改+伪静态规则下载(GBK版) 下载完毕后,直接覆盖就可以使用了,小拼不干“坑爹”的事,都是官方源码基础上修改的,绝无第三方垃圾信息存在,放心去用吧:-) DedeCMS 5.7问答伪静态修改注意事项 1)注意备份你站点的ask文件夹,防止出错,方便还原; 2)以上的问答伪静态仅供DedeCMS5.7 GBK版本使用,UTF版本请自行转换下代码; 3)考虑到SEO,很多织梦老用户都是V5.1~V5.6版本升级至V5.7的,小拼提供的修改办法保证了历史问答版本URL的一致性,否则URL改变是很影响seo/seo.html" target="_blank">搜索引擎收录和排名的; 4)你可以参考下小拼的问答伪静态实现思路,总结出一套符合个人站点风格的伪静态方法。 DedeCMS 5.7问答伪静态初级解决方案 如果你怕麻烦,还心存疑虑,那就直接使用官方默认的伪静态方法了,仅实现问答栏目页和详细页的伪静态,可以使用下面的伪静态规则: IIS服务器,在httpd.ini文件中加入:   #问答首页 #RewriteRule ^(.*)/index.html $1/index.php [I] #问答详细页 RewriteRule ^(.*)/([0-9]+).html $1/?ct=question&askaid=$2 [I] #问答一级栏目 #RewriteRule ^(.*)/([0-9]+) $1/?ct=browser&tid=$2 [I] #问答子栏目 #RewriteRule ^(.*)/t([0-9]+) $1/?ct=browser&tid2=$2 [I]Apache服务器,在.htaccess文件中加入: RewriteRule ^index.html$ index.php RewriteRule ^([0-9]+).html$ ?ct=question&askaid=$1 RewriteRule ^([0-9]+)$ ?ct=browser&tid=$1 RewriteRule ^t([0-9]+)$ ?ct=browser&tid2=$1
上一条:织梦DEDECMS网站栏目调用对应文章数的方法 下一条:织梦批量导入关键字技巧

相关文章

最新文章