DedeCMS V5.7问答伪静态配置方法

我们先来看下DedeCMS 5.7问答模块的官方升级说明:
1)重构问答模块,采用模块MVC架构进行重构;
2)问答模块支持伪静态设置;
3)重新设计问答模块前台界面,新界面同系统整体界面一致;
4)客服中心采用新版问答模块改版;
5)问答模块增加对二级域名的支持。通过上述说明,结合DedeCMS V5.7的问答源码,基本可以确定两个信息:
1)DedeCMS 5.7问答模块仍然支持伪静态;
2)由于织梦问答模块升级,使用了新的URL形式,历史版本的问答系统伪静态规则已经不适用于新版了,这也DedeCMS 5.7问答伪静态实现要解决的重点。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=$1
时间: 2024-09-20 19:52:56

DedeCMS V5.7问答伪静态配置方法的相关文章

DedeCMS 5.7伪静态配置方法

1)你的主机是否支持伪静态?这点很重要,不然下面说再多也是白搭.简单说明下,Apache服务器伪静态实现需要借助.htaccess文件:IIS服务器伪静态实现则需要加载Rewrite组件,然后配置httpd.ini文件: 延伸阅读:Windows2003 IIS6/7伪静态组件下载/安装/配置(附伪静态规则) 2)DedeCMS V5.7管理后台-系统-系统基本参数-模块设置,"是否使用Rewrite"选择"是","问答模块的二级域名"填写&qu

Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件安装和伪静态配置方法_win服务器

1)下载IIS伪静态组件--ISAPI_Rewrite3完全破解版 ISAPI_Rewrite3非常好用,是个人见过最好用同时可以支持多站点的IIS伪静态组件!1.官网下载(http://www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0073.msi):2.建议从本网站下载破解版:http://www.jb51.net/softs/41171.html2)安装IIS伪静态组件1.以下载本网站的破解版为例:将下载的ISAPI_R

apache 伪静态配置方法

apache 伪静态配置方法 Apache伪静态html(URL Rewrite)设置法 phpma一 打开 Apache 的配置文件 httpd.conf . phpma二 将#LoadModule rewrite_module modules/mod_rewrite前面的#去掉 phpma三 在 httpd.conf中添加: <IfModule mod_rewrite.c>     RewriteEngine On     #RewriteCond %{ENV:SCRIPT_URL} (?

Win7/Windows2003下IIS6.0、IIS7.5的伪静态组件ISAPI_Rewrite安装和伪静态配置方法

说实在的windows的服务器是我最不喜欢的系统,所以一直以来做的很少,没办法,而这次就需要做Windows2003下iis6.0伪静态,没办法,只能倒腾选,把过程和经验贴出来,学习下.  Win7/Windows2003下IIS6.0.IIS7.5的伪静态组件isapi_rewrite安装和伪静态配置方法 本过程适合: Win7/Windows2003下IIS6.0.IIS7.5 1)下载IIS伪静态组件--ISAPI_Rewrite3完全破解版 ISAPI_Rewrite3非常好用,是个人见

织梦dedecms5.7列表页面伪静态配置方法(非常详细)

打开/include/helpers/channelunit.helper.php. 查找:  代码如下 复制代码 //动态 $reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid; 替换为 //动态 $reurl = "/category/list-".$typeid.".html"; 意思是:将默认的频道或是列表页URL/plus//list.php?tid=1变更为/dedecms/

apache中虚拟主机与伪静态配置方法

在apache安装根目录中找到conf/httpd.conf文件,然后打开这个文件最下边有一行 # virtual hosts include conf/extra/httpd-vhosts.conf 看include conf/extra/httpd-vhosts.conf 这一行是否被注释掉,如果被注释掉,请取消注释. 然后打开conf/extra/httpd-vhosts.conf 这个文件,在文件中新建虚拟机 比如要绑定域名为www.111cn.net <virtualhost *:80

phpcms v9中给Rss伪静态配置方法

ss页面的伪静态实现目标 设置前的URL:http://localhost/index.php?m=content&c=rss&siteid=1 设置后的URL:http://localhost/rss.html 实现方法: 一.开启rewrite模块 找到Apache 配置文件 httpd.conf  1.LoadModule rewrite_module modules/mod_rewrite.so  把这句的"#"注释掉.  2.AllowOverride non

nginx 伪静态配置方法

nginx里使用伪静态是直接在nginx.conf 中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态 nginx只需要打开nginx.conf配置文件,在server里面写需要的规则即可  代码如下 复制代码 server { listen       80; server_name  bbs.o135.cn; index index.html index.htm index.php; root  /home/www/bbs; error_page  404

linux系统中WordPress伪静态配置方法

L我们是否有发现环境中我们较为常用的wordpress伪静态不生效,内页出现404错误页面.这个问题很好解决,因为我们lnmp采用的是nginx,而不是apache,所以不如apache直接丢htaccess文件到网站根目录就可以生效伪静态. 首先,默认安装的lnmp环境中已经有伪静态文件wordpress.conf文件在"/usr/local/nginx/conf/wordpress.conf"中,我们可以核对一下里面的编译代码是不是为:  代码如下 复制代码 if (-f $req