Phpcms网站优化
Phpcms网站优化(本文主要讲解Phpcms如何做好基础优化,让搜索引擎更快收录)
如果网站只是个人练手,不准备上线及面向搜索引擎的话,那么可以不用根据本文来进行优化设置
本文提供的只是基础网站优化建议,不保证收录效果
Phpcms V9全站伪静态设置方法
Phpcms V9可以说是cms程序中自定义功能最强的,在静态化以及伪静态方面都可以设置,分享PHPCMS V9伪静态设置方法,希望大家能用得上!
为什么要伪静态?一方面更新修改后不需要生成静态文件,另一方面为了SEO!
访问规则如下:
list-{$catid}-{$page}.html
content-{$catid}-{$id}-{$page}.html
可以到扩展->URL规则管理,设置。
注意以下的方法只适用于Apache服务器的,如果IIS服务器请使用httpd.ini而不是.htaccess。设置httpd.ini的方法略跟.htaccess不同,因为我本地没有IIS所以就不写这些规则了。
一、检查服务器是否支持rewrite 例如本地开启rewrite方法如下
Apache 配置文件 httpd.conf
1、LoadModule rewrite_module modules/mod_rewrite.so
把这句的“#”注释掉。
2、AllowOverride none 改为 AllowOverride all
重启apache服务器。
二、准备.htaccess文件(如何建立. htaccess )
若是windows,可以使用记事本,保存选择另存为,".htaccess" ,注意命名时要加上""。 得到.htaccess文件,然后把以下代码写进去保存。
RewriteEngine On RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /index\.php\?m=content&c=index&a=show&catid=&id= &page= RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ /index\.php\?m=content&c=index&a=show&catid=&id= &page= RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ /index\.php\?m=content&c=index&a=lists&catid=&page=
以上的是.htaccess规则。
要是想在本地测试,例如 127.0.0.1/my2400,因为不是根目录访问,所以把以上代码改写如下(多了个/my2400):
RewriteEngine On RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /my2400/index\.php\?m=content&c=index&a=show&catid= &id=&page= RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$ /my2400/index\.php\?m=content&c=index&a=show&catid=&id= &page= RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$ /my2400/index\.php\?m=content&c=index&a=lists&catid=&page=
三、PHPCMS V9后台设置分类栏目。
位置:内容->管理栏目->添加栏目 注意设置第二选项卡,“生成HTML设置”
栏目页URL规则:list-1-2-1.html
内容页URL规则:content-1-2-1.html
四、批量更新URL,完成伪静态设置。
PHPCMS V9静态化HTML生成设置及URL规则优化
一、静态化HTML生成设置
进入PHPCMS V9后台设置,找到分类栏目,位置:内容->管理栏目->添加栏目(或者管理栏目、点击对应栏目“修改”):
注意设置第二选项卡,“生成HTML设置”,具体抓图:
确认提交后,记得更新栏目缓存,然后进行发布管理:批量更新栏目页、批量更新内容页。
二、PHPCMS V9自定义URL规则及URL地址优化
先了解下PC v9的html生成原理:
Phpcms生成的静态页目录规则是按照URL规则生成的, 静态页内容是ob_clean前台模板文件产生的phpcms\templates\default,
静态页的调试 :修改静态页,重新生成静态页再看效果,也可以调用前台控制/index.php?m=openservice&c=index&a=openservice修改好前台模板再生成。
只要是静态页的链接都要及时同步文件,防止死链接,数据错误。
基于此,我们可以在后台扩展URL规则管理中自定义URL生成规则,具体位置:扩展 > URL规则管理 。
1、默认的栏目生成规则是:
{$categorydir}{$catdir}/index.html|{$categorydir}{$catdir}/{$page}.html
具体生成html的时候,将会显示成:news/baisheng999/1000.html。
这个有点小问题,如果列表有多页,那么第二页只是生成一个数字的html,比如2.html表示列表第二页,建议修改成:
{$categorydir}{$catdir}/index.html|{$categorydir}{$catdir}/index_{$page}.html
按照栏目index页面生成,栏目列表变成:index.html、index_2.html、index_3.html……这样比较明朗。
如果要自定义生成到某一个固定的目录,可以在前面添加一个特定的英文目录。
2、文章页面的默认生成规则是:
{$year}/{$catdir}_{$month}{$day}/{$id}.html|{$year}/{$catdir}_{$month}{$day}/{$id}_{$page}.html
或者:
{$categorydir}{$catdir}/{$year}/{$month}{$day}/{$id}.html|{$categorydir}{$catdir}/{$year}/{$month}{$day}/{$id}_{$page}.html
这样的规则生成的HTML网页目录太深了,建议修改为:
{$categorydir}{$catdir}/{$id}.html|{$categorydir}{$catdir}/{$id}_{$page}.html
这样生成的HTML静态文件,仅仅是在栏目的根部,这样便于管理,也利于SEO。
3、单页面生成规则优化
默认的单页面生成方式只有一种,建议增加一种:
{$categorydir}{$catdir}.html
于是二级目录的单页面只生成一个html,而不生成一个目录,这样有利于HTML架构。分享设置抓图:
phpcms v9 针对百度优化(seo)标题分隔符和简短标题
phpcms v9的标题分隔符默认是 -,
据网上资料说,这种分隔符对谷歌搜索引擎来说,非常友好,但对百度来说,它更喜欢__ 这种符合中国人的使用习惯的分隔符,
因此决定将网站的标题分隔符改为以“_”来进行分隔。
打开网站目录下的 phpcms/libs/functions/global.func.php文件, 找到 function seo, 进一步找到函数中的以下语句
seo['title'] = (isset($title) && !empty($title) ? $title.’ – ‘ : ”).(isset($cat['setting']['meta_title']) && !empty($cat['setting']['meta_title']) ? $cat['setting']['meta_title'].’ – ‘ : (isset($cat['catname']) && !empty($cat['catname']) ? $cat['catname'].’ – ‘ : ”));
将语句中的’ – ‘替换为’ _ ‘,到此完成标题分隔符的修改工作。
文章页面模板标题修改{$title}即可。
0条评论