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 字符串方式 '靜態地址' => '靜態規則', )
當咱們的網站某個頁面被百度蜘蛛爬行,收錄之後,那麼在搜索到相關頁面的時候,就會默認訪問咱們緩存的這個靜態頁面