1.网站url作seo优化的缘由php
SEO是由英文Search Engine Optimization缩写而来, 中文意译为“搜索引擎优化”。SEO是指经过对网站进行站内优化(网站结构调整、网站内容建设、网站代码优化等)和站外优化,从而提升网站的关键词排名以及公司产品的曝光度。html
URL优化的效果跟站点在百度的权重关联性不大,可是对收录、蜘蛛爬行和传递权重有明显的提高。thinkphp
蜘蛛爬行原理:蜘蛛爬行原理有 深度优先和宽度优先了解:数组
(1)深度优先:深度优先适用于一些大站,蜘蛛很渴望获得他的内容,好比新浪网易他们的目录很长,也能收录。假如咱们给蜘蛛一个线程只能爬取一个页面,爬行轨迹:首页-封面页-频道页-内容页,那么你网站的结构是:首页=> xxx/a=> xxx/a/b=> xxx/a/b/c/1.html=>。蜘蛛会沿着你的深度爬行进去,可是不管多大的站,你的深度也必须有限,不然蜘蛛不可能无穷尽的挖掘进去,爬累了天然就会离开。而且内容也没带回去。缓存
(2)宽度优先:这个是我很是推崇的,并且我全部新站都是这种效果。效果说明在扁平化的今天,宽度优先是可让蜘蛛很是高效的爬行和返回的。url结构 xxx/a/ xxx/b/ xxx/c/ 这类的叫宽度优化,爬行轨迹 :首页-频道页A-频道页B-频道页C/首页-频道页A-内容页A1-内容页A2-内容页A*php框架
综上所述。其实能够看出:宽度优先的效率明显高于深度优先。并且蜘蛛的任务类别也单一,很是容易识别。同一线程爬取的几乎是同一类型页面,页面样式,外观相同。蜘蛛没必要花时间过于的去分析你的页面内结构,层次清晰。服务器
从蜘蛛爬行原理入手,如今讨论一下thinkphp框架的网站如何作url的seo优化框架
1.1.设置URL伪静态ide
在config.ini.php中设置,把URL作成伪静态,那么须要在config.php文件中设置:
'URL_MODEL'=>2, //URL模式为REWRITE模式 优化
PATHINFO模式是Thinkphp系统的默认URL模式,提供了最好的SEO支持,系统内部已经作了环境的兼容处理,因此可以支持大多数的主机环境。
'URL_HTML_SUFFIX' =>'.html', //配置文件中这句话的意思,在url的结尾以html后缀名结尾,这样能够看起来是静态文件,对seo有必定用处!
例如:
普通模式下URL:http://localhost/?m=home&c=user&a=login&var=value
PATHINFO模式下URL:http://localhost/index.php/home/user/login/var/value/
其中'URL_MODEL'=>2设置url的方式,'URL_HTML_SUFFIX' =>'.html'设置后缀。
1.2.将index.php隐藏。
http://localhost/index.php/home/user/login/var/value/
一般的URL里面含有index.php,为了达到更好的SEO效果可能须要去掉URL里面的index.php ,经过URL重写的方式能够达到这种效果,一般须要服务器开启URL_REWRITE模块才能支持。
下面是Apache的配置过程,能够参考下:
一、httpd.conf配置文件中加载了mod_rewrite.so模块
二、AllowOverride None 将None改成 All
三、确保URL_MODEL设置为2
四、把下面的内容保存为.htaccess文件放到入口文件的同级目录下
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] </IfModule>
重启Apache以后,原来的
http://localhost/index.php/home/user/login/var/value/
就能够经过访问
http://localhost/home/user/login/var/value/
简化了URL地址。
3.URL地址简化
若是以为咱们以上的伪静态地址路径层次够深,想直接在根目录下的地址如:
http://www.ipbia.com/index_index.html
对搜索引擎更友好,那么能够在配置文件中设置:
'URL_PATHINFO_DEPR' => '_',
前提:PATHINFO模式下面,URL是可定制的,例如,经过下面的配置:
'URL_PATHINFO_DEPR'=>'_',
那么上面的url就变成了:http://localhost/index.php/home_user_login_var_value
根据百度蜘蛛爬行原理:宽度优先的效率明显高于深度优先,将url模式设置成 http://localhost/index.php/home_user_login_var_value
这种模式,将更有利于百度蜘蛛爬行
2.配置url伪静态,那么设置静态缓存尤其重要
静态规则的定义方式以下:
'HTML_CACHE_ON' => true, // 开启静态缓存 'HTML_CACHE_TIME' => 60, // 全局静态缓存有效期(秒) 'HTML_FILE_SUFFIX' => '.shtml', // 设置静态缓存文件后缀 'HTML_CACHE_RULES' => array( // 定义静态缓存规则 // 定义格式1 数组方式 '静态地址' => array('静态规则', '有效期', '附加规则'), // 定义格式2 字符串方式 '静态地址' => '静态规则', )
当咱们的网站某个页面被百度蜘蛛爬行,收录之后,那么在搜索到相关页面的时候,就会默认访问咱们缓存的这个静态页面