织梦cms是能够转化成静态数据文档的,但是转化成静态数据文档如果有修改得话,必须再次转化成,较为不便。立即动态性得话,对网址的Seo有一点危害,应用伪静态是一个比较好的解决方案,尽管会提升网络服务器的负荷。好啦,下边就而言怎样完成织梦cmsDedeCMS5.7整站伪静态吧。
最先,服务器空间或是网络服务器必须适用伪静态。这一点很重要,要不然一切都是白费。你能与室内空间的IDC商联络一下,如果是自身的网络服务器,那么就更强办了,一般来说,室内空间全是适用伪静态的。Apache网络服务器伪静态相对性简易,立即在.htaccess文档中添加相对伪静态标准就可以;而IIS网络服务器伪静态的完成,则必须载入Rewrite部件,随后配备httpd.ini文件。
随后,必须在织梦后台打开DedeCms伪静态。
a.后台管理-系统软件主要参数-关键设定-是不是应用伪静态:挑选“是”;
b.假如你开启了问与答控制模块,则后台管理-系统软件主要参数-控制模块设定-是不是应用伪静态:挑选“是”;
c.建立频道或大批量提升频道时,频道目录选择项:挑选“应用动态性页”;加上新文章内容时,公布选择项:挑选“仅动态性访问”。自然,你也能够变更她们的模版,让她们默认设置便是这两个值,一劳永逸。改动方式非常简单,稍懂些HTML基本就可以了,这儿就已不累述了。
d.假如你的网址早已存有转化成的静态数据频道或文章内容HTML,那麼只需在后台管理-系统软件-SQL命令行工具中实行以下句子:
updatedede_arctypesetisdefault=-1;
updatedede_archivessetismake=-1;
在其中,dede就是你安裝时的数据分析表作为前缀,依据具体情况更换。
实际上,打开DedeCms伪静态适用并不可以彻底在后台管理配备,有很多地区還是必须手动式改动的,期待官方网健全。
织梦cmsDedeCms伪静态,牵涉到PHP源代码的改动,你能依靠Dreamweaver或者EditPlus一类制作软件来实际操作。下边说下织梦cmsDedeCms5.7整站伪静态的完成方式,适用V5.3之上版本号。本文说的DedeCms伪静态接口测试是WindowsIIS6,举一反三,Linux或其他网络服务器的伪静态完成基本原理全是一样的,要是弄清楚构思就可以了。
1.DedeCms主页伪静态
把网站根目录下index.html删掉,之后不升级首页HTML就可以,自然你也能够挑选不应用动态性主页。
2.DedeCms频道栏目、目录页、文章内容页伪静态
关键根据改动GetFileName()、GetTypeUrl()这两个涵数完成。DedeCmsV5.3、DedeCmsV5.5和DedeCmsV5.6版本号,开启/include/channelunit.func.php开展改动。留意:DedeCmsV5.7,此文件路径变更了,你开启/include/helpers/channelunit.helper.php就可以。
a.将GetFileName()中的以下编码:
//动态性文章内容
if($cfg_rewrite == 'Y')
{
return $GLOBALS["cfg_plus_dir"]."/view-".$aid.'-1.html';
}
替换为
//动态文章
if($cfg_rewrite == 'Y')
{
return "/archives/view-".$aid.'-1.html';
}
将文章内容页默认设置的/plus/view-1-1.html连接文件格式改成/archives/view-1-1.html,这一随本人喜爱,未作变更也行。
b.将GetTypeUrl()中的以下编码:
//动态性
$reurl=$GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
更换为
//动态性
$reurl="/category/list-".$typeid.".html";
这步务必改动,即给你的频道栏目或者目录页URL变动为/category/list-1.html方式。
3.DedeCms目录分页查询伪静态
开启/include/arc.listview.class.php,寻找获得动态性的分页查询目录GetPageListDM()涵数结尾处:
1$plist=str_replace('.php?tid=','-',$plist);
更换为
$plist=str_replace('plus','category',$plist);
//将默认设置的plus换成category
$plist=str_replace('.php?tid=','-',$plist);
将目录分页查询默认设置连接文件格式/plus/list-1-2-1.html改动为/category/list-1-2-1.html,这步还可以未作变更。
4.DedeCms文章分页查询伪静态
开启/include/arc.archives.class.php,寻找获得动态性的分页查询目录GetPagebreakDM()涵数结尾片:
1$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,形如/tags.php?/dedecms5.7/,十分之不好看。开启/include/taglib/tag.lib.php,寻找lib_tag()涵数下的:
1$row['link']=$cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
更换为
1$row['link']=$cfg_cmsurl."/tags/".urlencode($row['keyword'])."/";
到这儿,TAG标识URL中的“.php?”号就除掉了。
6.DedeCms检索伪静态
DedeCms检索URL静态数据化较为不便,附加主要参数多不用说,主要参数也将会转变,像百度搜索分页查询的URL就特不便,伪静态标准配对繁杂。随州市SEO就偷下懒,将检索URL中“search.php?…”立即更换为“search.html?…”,对于“?”号以后的主要参数以随意标识符开展配对。
先后开启include文件夹名称下的channelunit.func.php、arc.searchview.class.php、arc.taglist.class.php及其/include/taglib/hotwords.lib.php,搜索“search.php?”更换为“search.html?”就可以。
7.DedeCms问与答伪静态
问与答控制模块的伪静态完成非常简单,要是后台管理打开伪静态适用就可以,对于某些网页页面,如ask文件目录下的browser.php、question.php及其include文件目录下的common.inc.php、functions.inc.php都必须简易改动才能够配对伪静态标准。
留意一点,DedeCmsV5.7问与答控制模块总体升級了,以前的标准早已不适合了,之后会专业写个实例教程供大伙儿参照的。
8.DedeCms伪静态标准
按照上边的流程改动结束,接下去配备你要的伪静态标准,DedeCms整站伪静态就极致完成了。
1)IIS伪静态
开启httpd.ini文件,添加以下标准:
#主页伪静态标准,如果不应用动态性主页,切勿必删掉这一行,不然打开首页会出現无限循环
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/list.php?tid=$1
RewriteRule^category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$/plus/list.php?tid=$1&totalresult=$2&PageNo=$3
RewriteRule^archives/view-([0-9]+)-([0-9]+)\.html$/plus/view.php?arcID=$1&pageno=$2
本文的Apache伪静态标准一部分是沒有进行的,大伙儿能够依据IIS的伪静态标准开展健全。到此,织梦cmsDedeCMS5.7的整站伪静态就完成了。提议就应用织梦cms的转化成的静态数据文档就可以,没必要开展伪静态。