织梦网站如何生成伪静态,织梦手机端伪静态
内容导航:
一、dede网站怎么进行伪静态处理
织梦DedeCms全站伪静态,是为了更方便管理和SEO,织梦DedeCms默认是生成静态html文件的,对于优化已经非常友好,但还是有部分页面是动态形式的(比如:Tag标签页面、网站内容搜索页面、DedeCms问答页面等),为了是这些页面更好的被搜索引擎收录,就需要进行伪静态了,虽然织梦DedeCms系统可以生成静态html文件,但如果每天更新内容量特别大的话,对于生成html文件也成为系统和人力的一个负担,那么也可以做成伪静态形式,这样就免去了不断繁琐的生成html文件了。将DedeCms全站静态化,这就需要mod_rewrite伪静态模块的支持。只要站长对.htaccess正则表达式精通,就可以把dede整站静态化,更符合搜索引擎,而且还可以避免重复URL来。DedeCms全站伪静态配置有些麻烦,主要是需要我们手动修改源代码。整理步骤如下:1、首先开启站点伪静态功能。登录dede管理员后台->系统->系统基本参数->核心设置->是否使用伪静态
请选择“是”。2、修改源程序,实现首页伪静态、频道页伪静态、列表页伪静态、文章页伪静态,这是过程比较复杂,不如其它php开源程序操作简单。3、制作编写.htaccess和.htaccess文件规则,上传到DedeCms的安装目录。织梦DedeCms全站伪静态教程:含列表|文章|问答|搜索|TAG伪静态规则:1、网站服务器和网站空间是否支持伪静态:这点特别重要,要么所以设置都不起作用。如果你的网站使用的是服务器,那么就可以自己动手设置一下,如果是空间的话,可以询问下IDC服务商客服,看是否支持伪静态(一般空间都是支持伪静态的)。Apache服务器伪静态相对简单,直接在.htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置文件。2、开启DedeCMS伪静态:1)织梦DedeCms后台-
系统参数-核心设置-是否使用伪静态:选择“是”;2)如果你启用了织梦DedeCms问答模块,则在后台-系统参数-模块设置-
是否使用Rewrite:选择“是”;3)创建栏目或批量增加栏目时,栏目列表选项:选择“使用动态页”; 添加新文章时,发布选项:选择“仅动态浏览
”。同样你也可以更改他们的模板,让他们默认就是这两个值,一劳永逸。修改方法很简单,方法如下:找到后台文件:/dede/templets/catalog_
修改添加栏目时默认“使用动态页”栏目列表选项:链接到默认页链接到列表第一页使用动态页改为下面代码栏目列表选项:链接到默认页链接到列表第一页使用动态页找到后台文件:/dede/templets/article_
修改添加文章时默认“仅动态浏览”发布选项:生成HTML仅动态浏览 改为下面代码发布选项:生成HTML仅动态浏览
4)如果网站已经存在生成的静态栏目或文章HTML,那么只需在后台-系统-SQL命令行工具 中执行如下语句:update dede_arctype set
isdefault=-1;update dede_archives set
ismake=-1;注:命令中dede是网站安装时的数据表前缀,根据实际情况进行替换。3、开启DedeCms伪静态支持并不能完全在后台配置,有很多地方还是需要手动修改的。下面讲解DedeCms全站伪静态的实现方法,适用于V5.3以上版本。这次的DedeCms伪静态测试环境是Windows
IIS6,对于Linux或其它服务器的伪静态实现原理都是一样的,只要搞清楚思路就行。1)DedeCms首页伪静态:把站点根目录下删除,以后不更新主页HTML就可以了,当然你也可以选择不使用动态首页。2)DedeCms频道|列表页|文章页伪静态:主要通过修改GetFileName()、GetTypeUrl()这两个函数实现。DedeCms
V5.3、DedeCms V5.5和DedeCms V5.6版本,打开/include/进行修改。注意:DedeCms
V5.7,此文件路径更改了,你打开/include/helpers/即可。 A.将GetTypeUrl()中的如下代码: //动态 $reurl =
$GLOBALS[‘cfg_phpurl’].”/?tid=”.$typeid; 替换为 //动态 $reurl =
“/category/list-“.$typeid.”.html”; 这步必须修改,即让你的频道或是列表页URL变更为/category/形式。
B.将GetFileName()中的如下代码: //动态文章 if($cfg_rewrite == ‘Y’) { return
$GLOBALS[“cfg_plus_dir”].”/view-“.$aid.’-‘; } 替换为 //动态文章 if($cfg_rewrite ==
‘Y’) { return “/archives/view-“.$aid.’-‘; }
将文章页默认的/plus/链接格式改为/archives/,随个人喜好,不改也行。 3)DedeCms列表分页伪静态:
打开/include/,找到获取动态的分页列表GetPageListDM()函数末尾处: $plist = str_replace(‘.php?tid=’,
‘-‘, $plist); 替换为 $plist = str_replace(‘plus’, ‘category’,
$plist);//将默认的plus替换成category $plist = str_replace(‘.php?tid=’, ‘-‘, $plist);
将列表分页默认链接格式/plus/修改为/category/,这步也可以不作更改。4)DedeCms文章分页伪静态:
打开/include/,找到获取动态的分页列表GetPagebreakDM()函数末尾片: $PageList =
str_replace(“.php?aid=”,”-“,$PageList); 替换为 $plist = str_replace(‘plus’,
‘archives’, $plist);//将默认的plus替换成archives $PageList =
str_replace(“.php?aid=”,”-“,$PageList); 这步不作修改也可以,只是个人喜好问题。5)DedeCmsTAG标签伪静态:
DedeCms默认的TAG标签URL,形如/?/dedecms5.7/,特别的难看。打开/include/taglib/,找到lib_tag()函数下的:
$row[‘link’] = $cfg_cmsurl.”/?/”.urlencode($row[‘keyword’]).”/”; 替换为
$row[‘link’] = $cfg_cmsurl.”/tags/”.urlencode($row[‘keyword’]).”/”;
到这里,TAG标签URL中的“.php?”号就去掉了。6)DedeCms搜索伪静态:
DedeCms搜索URL静态化比较麻烦,附带参数多不说,参数也可能变化,像搜索结果分页的URL就特麻烦,伪静态规则匹配复杂。将搜索URL中“?…”直接替换为“?…”,至于“?”号之后的参数以任意字符进行匹配。
依次打开include文件夹下的、、以及/include/taglib/,查找“?”替换为“?”即可。7)DedeCms问答伪静态:
问答模块的伪静态实现比较简单,只要后台开启伪静态支持即可,至于个别页面,如ask目录下的、以及include目录下的、都需要简单修改才可以匹配伪静态规则。注意一点,DedeCms
V5.7问答模块整体升级了,之前的规则已经不适用了。4、DedeCms伪静态规则:依照上面的步骤修改完毕,接下来配置好文件和.htaccess文件伪静态规则,则DedeCms全站伪静态就完美实现。1)IIS伪静态
打开文件,加入如下规则: #首页伪静态规则,如果不使用动态首页,请勿必删除这一行,否则打开首页会出现死循环 RewriteRule
^(.)/index\.html $1/index\.php [I] #列表页伪静态规则 RewriteRule
^(.)/category/list-([0-9]+)\.html $1/plus/list\.php\?tid=$2 [I] RewriteRule
^(.)/category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html
$1/plus/list\.php\?tid=$2&TotalResult;=$3&PageNo;=$4 [I] #文章页伪静态规则
RewriteRule ^(.)/archives/view-([0-9]+)-([0-9]+)\.html
$1/plus/view\.php\?arcID=$2&pageno;=$3 [I] #搜索伪静态规则 RewriteRule
^(.)/search\.html(?:(\?.)) $1/search\.php?$2 [I] #TAG标签伪静态规则 RewriteRule
^(.)/tags\.html $1/tags\.php [I] RewriteRule ^(.)/tags/(.)(?:(\?.))
$1/tags\.php\?\/$2 [I] RewriteRule ^(.)/tags/(.)\/(?:(\?.))
$1/tags\.php\?\/$2\/ [I] RewriteRule ^(.)/tags/(.)\/([0-9])(?:(\?.))
$1/tags\.php\?\/$2\/$3 [I] RewriteRule ^(.)/tags/(.)\/([0-9])\/(?:(\?.))
$1/tags\.php\?\/$2\/$3\/ [I] #问答伪静态规则,适用于DedeCmsV5.3-5.6版本,需要修改几处程序
RewriteRule ^(.)/post\.html $1/post\.php [I] RewriteRule ^(.)/type\.html
$1/type\.php [I] RewriteRule ^(.)/question-([0-9]+)\.html
$1/question\.php\?id=$2 [I] RewriteRule ^(.)/browser-1-([0-9]+)\.html
$1/browser\.php\?tid=$2 [I] RewriteRule ^(.)/browser-2-([0-9]+)\.html
$1/browser\.php\?tid2=$2 [I] RewriteRule
^(.)/browser-1-([0-9]+)-([0-9]+)\.html $1/browser\.php\?tid=$2&page;=$3 [I]
RewriteRule ^(.)/browser-2-([0-9]+)-([0-9]+)\.html
$1/browser\.php\?tid2=$2&page;=$3 [I] RewriteRule
^(.)/browser-([0-9]+)\.html $1/browser\.php\?lm=$2 [I] RewriteRule
^(.)/browser-1-([0-9]+)-([0-9]+)\.html $1/browser\.php\?tid=$2&lm;=$3 [I]
RewriteRule ^(.)/browser-2-([0-9]+)-([0-9]+)\.html
$1/browser\.php\?tid2=$2&lm;=$3 [I]2)Apache伪静态:打开.htaccess文件,加入如下规则:
提供部分规则作参考 RewriteRule ^category/list-([0-9]+)\.html$ /plus/?tid=$1
RewriteRule ^category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$
/plus/?tid=$1&totalresult;=$2&PageNo;=$3 RewriteRule
^archives/view-([0-9]+)-([0-9]+)\.html$ /plus/?aid=$1&pageno;=$2RewriteRule
^$ –
二、如何将织梦dede搜索改为URL伪静态
dede5.7伪静态设置七步法:第一步、后台-系统参数-核心设置-
是否使用伪静态:选择“是”;注:你的网站空间是否支持伪静态,你可以与空间的IDC商联系一下,如果是自己的服务器,那就更好办了,自己动手,丰衣足食。
一般来说,空间都是支持伪静态的。
Apache服务器伪静态相对简单,直接在.htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置文件。
第二步、如果你的网站已经存在生成的静态栏目或文章HTML,那么只需在后台-系统-SQL命令行工具中执行如下语句:将所有文档设置为“仅动态浏览”:update
dede_archives set ismake=-1将所有栏目设置为“使用动态页”:update dede_arctype set
isdefault=-1第三步、列表页、文章页伪静态修改打开/include/helpers/。
(1)查找://动态文章if($cfg_rewrite == ‘Y’){return
$GLOBALS[“cfg_plus_dir”].”/view-“.$aid.’-‘;}替换为//动态文章if($cfg_rewrite ==
‘Y’){return “/DedeCMS/DedeCMS5.7-“.$aid.’-‘;}意思是:将默认的/plus/文章链接格式改为/DedeCMS/。
(2) 查找://动态$reurl = $GLOBALS[‘cfg_phpurl’].”/?tid=”.$typeid;替换为//动态$reurl =
“/category/list-“.$typeid.”.html”;意思是:将默认的频道或是列表页URL/plus//?tid=1变更为/dedecms/形式。
第四步、列表分页伪静态修改打开/include/查找:$plist = str_replace(‘.php?tid=’, ‘-‘,
$plist);替换为$plist = str_replace(‘plus/?tid=’, ‘DedeCMS/DedeCMS5.7-‘,
$plist);将默认的plus/?tid=替换成RMB/list-;意思是:将默认的列表分页链接格式plus/?tid=x$x$xl修改为DedeCMS/。
第五步、文章分页伪静态打开/include/,找到获取动态的分页列表GetPagebreakDM()函数末尾处:查找:$PageList =
str_replace(“plus/?tid=”,”DedeCMS/DedeCMS5.7-“,$PageList);替换为$plist =
str_replace(‘plus/?tid=’, ’DedeCMS/DedeCMS5.7-‘,
$plist);将默认的plus/?tid=替换成RMB/huilv-;意思是:将默认的文章分页链接格式plus/?tid=x$x$xl修改为DedeCMS/第六步、TAG标签伪静态DedeCms默认的TAG标签URL,形如/?/dedecms模板
/,是不是觉得有个问号不怎么爽,我们改成/tags/dedecms模板 /,是不是好看多了。
下面我们来改一下,打开/include/taglib/:查找:$row[‘link’] =
$cfg_cmsurl.”/?/”.urlencode($row[‘keyword’]).”/”;替换为$row[‘link’] =
$cfg_cmsurl.”/tags/”.urlencode($row[‘keyword’]).”/”;这样就修改好了,上传你到你的网站,切记:要记得将原网站备份哦!!第七步、伪静态规则:[ISAPI_Rewrite]#
3600 = 1 hourCacheClockRate 3600RepeatLimit 32RewriteRule
^(.)/RMB/list-([0-9]+)\.html $1/plus/list\.php\?tid=$2 [I]RewriteRule
^(.)/RMB/list-([0-9]+)-([0-9]+)-([0-9]+)\.html
$1/plus/list\.php\?tid=$2&TotalResult;=$3&PageNo;=$4 [I]RewriteRule
^(.)/RMB/huilv-([0-9]+)-([0-9]+)\.html
$1/plus/view\.php\?arcID=$2&pageno;=$3 [I]RewriteRule
^(.)/(.)_(.)([0-9]+)\.html $1/huilv/?from=$2&to;=$3#=$4 [I]RewriteRule
^(.)/tags\.html $1/tags\.php [I]RewriteRule ^(.)/tags/(.)(?:(\?.))
$1/tags\.php\?\/$2 [I]RewriteRule ^(.)/tags/(.)\/(?:(\?.))
$1/tags\.php\?\/$2\/ [I]RewriteRule ^(.)/tags/(.)\/([0-9])(?:(\?.))
$1/tags\.php\?\/$2\/$3 [I]RewriteRule ^(.)/tags/(.)\/([0-9])\/(?:(\?.))
$1/tags\.php\?\/$2\/$3\/ [I]将上面代码保存为: 上传到网站的根目录。
如无特特殊需求建议采用官方默认的生成静态的页面方式浏览。
rewriterule ^(.)/search\.html(?:(\?.)) $1/search\.php?$2rewriterule
^login\/$ $1/member/erule ^(.*)reg\/$
$1/member//index?fmdo=user&dopost;=regnew
三、生成伪静态有什么用
答:伪静态是相对真实静态来讲的,真实静态会生成一个html或htm后缀的文件,访客能够访问到真实存在的静态页面,而伪静态则没有生成实体静态页面文件,而仅仅是以.html一类的静态页面形式,但其实是用PHP程序动态脚本来处理的,这就是伪静态。静态页面的优缺点:真实静态通常是为了更好的缓解服务器压力,和增强搜索引擎的友好面,所以都将网页内容生成静态页面。但最大缺陷是每次在网站后台修改网页内容都需要重新生成静态页面,无法实时显示更新的内容,而久之网站内容多了,占用的空间大小以及每次生成静态页面所耗费的服务器资源也不容小觑(有出现内容过多且一次性生成静态页面而导致服务器奔溃的案例)。伪静态有什么作用?有的朋友为了实时的显示一些信息,或者还想运用动态脚本解决一些问题,不能用静态的方式来展示网站内容,但是这就损失了对搜索引擎的友好面,怎么样在两者之间找个中间方法呢?这就产生了伪静态技术。
四、织梦不使用伪静态规则 怎么实现伪静态
首先在dede后台开启伪静态(开启的方法在系统参数-核心设置) 方法步骤: 第一步. 首先栏目和文章最好设置成动态浏览. 这样才不会生成静态html文件.
第二步. 设置重写规则. 在系统目录下加一个 .htaccess文件. 内容为: RewriteEngine OnRewriteR.
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/117335.html