织梦DedeCMS5.7问答模块实现静态化教程

添加dedecms的问答模块有助于被收录的量及提高网站资讯量,有利于seo的优化及排名,特别是对于图片站来说,添加了问答模块可以更好的提高收录量,也有利于被惩罚站的 恢权重,如果你的站被惩罚了,那么添加个问答模块还有利于加速恢复权重。 我们先来看下Ded

添加dedecms的问答模块有助于被收录的量及提高网站资讯量,有利于seo的优化及排名,特别是对于图片站来说,添加了问答模块可以更好的提高收录量,也有利于被惩罚站的
恢权重,如果你的站被惩罚了,那么添加个问答模块还有利于加速恢复权重。
我们先来看下DedeCMS 5.7问答模块的官方升级说明:
重构问答模块,采用模块MVC架构进行重构;
问答模块支持伪静态设置;
重新设计问答模块前台界面,新界面同系统整体界面一致;
客服中心采用新版问答模块改版;
问答模块增加对二级域名的支持。
通过上述说明,结合DedeCMS V5.7的问答源码,基本可以确定两个信息:
DedeCMS 5.7问答模块仍然支持伪静态;
由于织梦问答模块升级,使用了新的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
#问答详细页
RewriteRule ^(.*)/question-([0-9]+)\.html $1/\?ct=question&askaid=$2
#问答一级栏目
RewriteRule ^(.*)/browser-1-([0-9]+)\.html $1/\?ct=browser&tid=$2
#问答一级栏目分页
RewriteRule ^(.*)/browser-1-([0-9]+)-page-([0-9]+)\.html $1/\?ct=browser&tid=$2&page=$3
#问答子栏目
RewriteRule ^(.*)/browser-2-([0-9]+)\.html $1/\?ct=browser&tid2=$2
#问答子栏目分页
RewriteRule ^(.*)/browser-2-([0-9]+)-page-([0-9]+)\.html $1/\?ct=browser&tid2=$2&page=$3
# 精彩推荐、待解决问题、高悬赏问题、新解决问题、零回答问题、快到期问题(包括一级栏目、子栏目及其分页)
RewriteRule ^(.*)/browser-([0-9]+).html $1/\?ct=browser&lm=$2
RewriteRule ^(.*)/browser-([0-9]+)-page-([0-9]+)\.html $1/\?ct=browser&lm=$2&page=$3
RewriteRule ^(.*)/browser-1-([0-9]+)-([0-9]+)\.html $1/\?ct=browser&tid=$2&lm=$3
RewriteRule ^(.*)/browser-1-([0-9]+)-([0-9]+)-page-([0-9]+)\.html $1/\?ct=browser&tid=$2&lm=$3&page=$4
RewriteRule ^(.*)/browser-2-([0-9]+)-([0-9]+)\.html $1/\?ct=browser&tid2=$2&lm=$3
RewriteRule ^(.*)/browser-2-([0-9]+)-([0-9]+)-page-([0-9]+)\.html $1/\?ct=browser&tid2=$2&lm=$3&page=$4
#全部分类
RewriteRule ^(.*)/type.html $1/\?ct=type
#问答搜索
RewriteRule ^(.*)/search\.html $1/\?ct=search
#总积分排行 周积分上升排行 查看个人信息
RewriteRule ^(.*)/myask-view-([0-9]+)\.html $1/\?ct=myask&ac=view&mid=$2
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

DedeCMS 5.7问答伪静态修改注意事项
1)注意备份你站点的ask文件夹,防止出错,方便还原;
2)以上的问答伪静态仅供DedeCMS5.7 GBK版本使用,UTF版本请自行转换下代码;
3)考虑到SEO,很多织梦老用户都是V5.1~V5.6版本升级至V5.7的,小拼提供的修改办法保证了历史问答版本URL的一致性,否则URL改变是很影响搜索引擎收录和排名的;
4)你可以参考下小拼的问答伪静态实现思路,总结出一套符合个人站点风格的伪静态方法。
DedeCMS 5.7问答伪静态初级解决方案
如果你怕麻烦,还心存疑虑,那就直接使用官方默认的伪静态方法了,仅实现问答栏目页和详细页的伪静态,可以使用下面的伪静态规则:

IIS服务器,在httpd.ini文件中加入:
#问答首页
#RewriteRule ^(.*)/index\.html $1/index\.php
#问答详细页
RewriteRule ^(.*)/([0-9]+)\.html $1/\?ct=question&askaid=$2
#问答一级栏目
#RewriteRule ^(.*)/([0-9]+) $1/\?ct=browser&tid=$2
#问答子栏目
#RewriteRule ^(.*)/t([0-9]+) $1/\?ct=browser&tid2=$2
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 5.7问答模块伪静态的实现方法就介绍到这里,有什么不明白的地方请在下面留言

 

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

dedecms织梦无需登录注册可下单购买的修改,首先找到/plus/carbuaction.php文件,找到如下代码: //确认用户登录信息if($cfg_ml-IsLogin()){ $userid = $cfg_ml-M_ID;}else{ $username = trim($username); $password = trim($password); if(empty($username)
用过织梦dedecms的人都知道,织梦会员系统相当强大,跟论坛程序差不多,对于使用会员系统的人来说,织梦系统足够用的了,但是,有时候,织梦系统很多的地方又不是我们所希望,或都说,有的地方不适合我们使用,这时候就要对织梦会员系统进行二次开发,所以,
我们在做 织梦模板 开发时,有时需要在artlist 和list标签中调用出图集中的图片,同时可以自定调用几张图片。跟版网整理了个一个这样功能的自定义函数。调用后效果如下: dedecms织梦artlist和list标签调用图集图片实现方法 函数代码 请将代码加入到 /includ
大家都知道,Discuz程序在发文章时有个【隐藏】功能,可以限制这个隐藏内容供某些级别的会员查看。 在织梦模板中,做些改动,也是可以实现的。例如:电话号码,下载地址等等。 前提是织梦开启会员功能,已经有了自定义字段。 一、建立文件 ajax_loginsta_c.p
大家在使用织梦的时候,用到会员中心可能涉及到多二级域名同步登录退出的问题,涉及到跨域,那么这个问题该如何解决呢?在一个技术大牛博客看到过此教程,特此转发分享给大家,解决大家问题。 首先打开 \include\dedeajax2.js 找到 DedeXHTTP = new XMLHttpR
大家在使用织梦标签调用手机站内容页上一篇下一篇的时候,发现下一篇调用的是上一篇的内容,织梦DEDE默认手机版内容页面点击下一篇却跳转到了上一篇怎么办? 这段代码可能是官方写错造成的,首先找到网站目录下面的/include/arc.archives.class.php文件,打