原本想要整理下搜索引擎收錄的原理的,可是發現好像理解的還不是很透徹,起了幾個草稿,都沒有能完成,那就換個角度,通常你們都知道網站上線了以後,網站的內容就有可能會被用戶搜索出來,會出如今搜索結果頁上面,用戶就能經過連接進去訪問站點了。這樣站點的瀏覽就會上去;javascript
可是,某天,給站點添加了一個用戶登陸功能,用戶能夠在網站上面進行一些我的信息的展現以及修改,那麼,這部分的頁面內容實際上是不但願被搜索引擎收錄的,由於可能會形成用戶信息的泄露。那麼是否有辦法能夠告訴搜索引擎不要來收錄某些內容頁面呢?html
答案確定是有的,雖然不作任何的設置,你的網站也會被收錄,可是,我不想被收錄也是能夠的。目前瞭解到的方法有2種,先記錄下:java
meta
標籤,看了一些seo相關的內容以後才發現,原來meta
標籤真的好強大;robots.txt
文件。<meta name="robots" content=''>
能夠在頁面上添加 <meta name="robots" content=''>
來告訴網絡爬蟲,本頁面是否容許被收錄,這個設置缺點就是,每一個頁面都要設置。它的值有如下這些,能夠根據實際狀況自由搭配,能夠添加多個的;不過,也有瀏覽器兼容問題;瀏覽器
meta robots 標籤是不區分大小寫的。(其實全部的meta標籤也是不區分大小寫的)服務器
根據上圖,會發現有容許
和不容許
的設置,其實這個我的感受容許
的設置實際上是沒有效果的,由於不設置<meta name="robots" content=''>
的狀況下就是容許,因此,能夠這樣理解,這個標籤只有在想要禁止索引的狀況下才會有意義;網絡
還有一個須要注意的細節,就是,設置這個標籤以後,搜索引擎是怎麼識別出來,其實,設置了<meta name="robots" content=''>
以後,並非說搜索引擎就徹底不進來對應的頁面了,只是說,搜索引擎不對該頁面的內容進行 收錄 操做,可是,是會進行 抓取 操做的。網站
怎麼理解上面的話?其實就是說,搜索引擎要把網頁的內容收錄到它的引擎中,其實前面還有不少個步驟的,那設置了<meta name="robots" content=''>
以後,其實第一步的抓取仍是會進行的,只是在抓取的時候,設置了<meta name="robots" content=''>
,那麼搜索引擎就會按照這個標籤的屬性進行不一樣的後續操做。搜索引擎
robots.txt
文件robots.txt
是放在站點根目錄的一個文件,裏面定義了哪些路由是容許站點爬蟲收錄的,哪些是不容許的,可是,robots.txt
文件的設置,其實並非一種規範,只是一種網絡約定,因此,若是不友好的網絡爬蟲沒有按照規範,先訪問robots.txt
,那麼,站點的內容同仍是會被搜索引擎收錄的。注意:robots.txt
文件名不要拼寫錯誤,且必須都是小寫。spa
robots.txt
文件中經常使用的參數有code
User-agent => 定義下面的規則對於哪些搜索引擎生效;
Disallow => 指定哪些目錄或文件類型是不想被檢索(抓取)的;
Allow => 指定哪些目錄或文科類型是能夠被檢索(抓取)的;
Sitemap => 指定站點內的sitemap文件位置,須要絕對位置;
複製代碼
根據上面的參數,結合站點的須要,能夠直接配置,那麼配置結束以後是否能夠直接上傳到服務器?這樣是一個危險的操做,雖然robots.txt
文件對於提高站點的SEO,做用並非十分的大,可是要是配置有誤,那麼可能會形成搜索引擎再也不來收錄站點,這會形成比較大的影響的。
因此仍是頗有必要檢查下 robots.txt
文件的語法。目前能夠幫忙檢測的地方在Google Search Console
裏面,須要先認證站點,而後把配置貼入,便可檢 robots.txt
編寫是否有誤;
按照語法,在這個文件中配置好哪些是但願被搜索引擎收錄的,哪些是不但願被收錄的,這樣配置好以後,當有網絡爬蟲來爬去站點內容時,會先訪問