国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

利用ASP實現三個強大功能之三

2019-11-18 20:23:05
字體:
來源:轉載
供稿:網友
如何隱藏頁面以防被搜索

  在網絡上為我們導航的搜索引擎使用一些小程序 --- 例如我們所知道的’robots’、’bots’、 ’crawlers’和’spiders’ --- 來對頁面進行索引。然而,當開發一個站點,尤其是使用asp進行開發時,做到防止頁面被索引卻是非常有用的。當這些搜索引擎正在回顧它們對所創建的web 頁面進行動態索引的方案時,例如ASP頁面,本文將幫助你學習一些重要的技巧來避免robots 跟蹤那些你不情愿被它們索引的頁面。

這為什么與你有關?

  比方說現在你訪問了XYZ公司的Web 站點,用你所熟悉的搜索引擎對’XYZ Corp.’ 進行搜索。如果你發現你的管理頁面也在相關的鏈接表中的話就會有點擔心了。如果你有一個電子商務站點,你會不愿意在用戶結束前面的頁面之前,得到這個站點的定單部分最后一頁的url 。不僅僅是網管人員不希望發生的。對于用戶來說,有些頁面不能正常運行也是煩惱的事,或者是因為他們沒有適當的權限,或者因為他們沒有按照設定的順序訪問頁面。這樣也不利于你的站點的聲譽。這與那些商業搜索引擎的經營者自身也有關系。因為他們想要提供準確的鏈接來改善服務。

  那么,如何防止這些程序對你的站點的某些頁面進行索引呢?有兩種方法可供選擇,一是在根目錄下包含一個名為robots.txt 的文件,或者是使用< META > 標記。

包含一個robots.txt 文件

  早在1994年,一個自動郵件發送列表就聯合提出了一個防止robots 拖拽站點的協定。但是這并不是一個正式的標準,它不能提供執行的保證,但是卻為許多robot 作者所使用。

  創建一個robots.txt 文件非常簡單,它表明網管人員所希望的robot 行為標準。注意文件名必須用小寫字母,而且必須放在站點的根文件夾中,例如http://xyzcorp/robots.txt ,這樣一個文件就能帶出整個站點的全部細節。
一個robots.txt 文件中有什么?

  每個robots.txt 文件包含一條或多條記錄。一條記錄由robot 的用戶代理字符串組成,即你愿意遵循的指示和應用于它的指示。不用擔心你需要知道在web中漫游的所有robot的用戶代理字符串,因為你可以用通配符* 來應用所有的robots。以下是一個記錄的例子:


User-agent: *

Disallow: /XYZfinances.asp

Disallow: /admin

Disallow: /news/update.asp


  除了用戶代理字符串/通配符,只需要包含一個disallow 命令。這一個簡單的例子就顯示了你將會需要的全部可能性。它表明沒有用戶代理字符串能夠進入 XYZfinances.asp ,用這一行表示:

Disallow: /XYZfinances.asp

  或者說用戶代理字符串不能進入管理文件夾及其下面的所有文件夾:

Disallow: /admin

  或者是新聞文件夾中的update.asp文件,如果新聞文件夾中所有其它內容都可以被索引的話。

  在一條記錄中你愿意包含多少用戶代理字符串的名字都可以。同樣在任何一個robots.txt 文件中,你愿意包含多少條記錄都可以(只要用一個或多個空行分隔開這些記錄就可以)。

  每一條單獨的記錄都可以為一個或多個robots提供不同的指示。但是為那些沒有用用戶代理字符串所命名的引擎增加一個通配符規則是明智的。最流行的選擇是維護用一條記錄和一個代表用戶代理字符串的通配符所表示一個方案。一個有196個用戶代理的清單可參考

http://info.webcrawler.com/mak/PRojects/robots/robots.html。

  普遍認為,robots應該忽略大小寫和版本號。要記住這是大多數商業搜索引擎的robots作者們的意見,因為你不想用那些沒用的頁面來使用戶感到苦惱。但是,雖然在命令行中你可以不必考慮大小寫,但是必須保證在鍵入URL時是準確無誤的。雖然Windows NT 對文件名和路徑名的大小寫無所謂,但并不是所有的平臺都如此。

  你希望包含進去的其它東西就只有注釋了,這些使用UNIX bourne shell 協定,如用#符號表示在hash 符號前面空白,和一行中可以被忽略的剩余部分。如果一行中只包含一個注釋的話,它就可以完全被忽略,雖然它在記錄之間的作用與空行并不相同。

現在來看看兩個最終的例子。

例1


# Don’t come to this site

User-agent: *

Disallow: / # Disallows anything


例2


# robots.txt for XYZcorp

# webmaster: John Doe contact JohnD@xyzcorp.com

User-agent: * # Applies to all robots except next record

Disallow: /store/order/ # No robot should visit any URL starting with

/store/order/

Disallow: /admin/ # Disallow any pages in the admin folder

Disallow: /world_domination.asp # Disallow world_domination.asp


好,這就是有關robot.txt文件的全部內容。

下面介紹如何使用 < META >標記 。

使用一個< META > robot 標記

  同樣,你還是不能保證一個robot 會完全遵守< META >標記中的指示,但是對商業搜索引擎來說還是十分有效的。< META >標記必須包含在一個文件的< HEAD > 部分。他們工作的原理是告訴robot 是否可以對其中有這個標記的頁面進行索引,是否可以跟隨頁面上或其下的文件夾中的任何鏈接。

同樣,語法非常簡單。第一個例子是:

< META NAME="robots" CONTENT="noindex" >


  這行代碼告訴 robot不要索引這一頁。

下一個例子:

< META NAME="robots" CONTENT="nofollow" >

  允許robot索引這一頁,但是規定它不能夠跟隨這一頁上的任何鏈接。如果你想將二者都禁止,可以使用:

< META NAME="robots" CONTENT="noindex, nofollow" >

  這表示不要索引這一頁,也不要跟隨這頁上的任何鏈接。但是,還有一個更簡單的方法:

< META NAME="robots" CONTENT="none" >

  還是表示不要索引這一頁,或跟隨這頁上的任何鏈接。

  不幸的是,如果你有一個名為admin.asp的文件與 update.asp相鏈接,在admin.asp中使用< META >

  標記來防止robot 對admin.asp 或 update.asp 進行索引,卻忘記在另一個與update.asp 相鏈接的

  頁面中也做同樣的處理,那么robot 還是可以通過這個漏掉< META > 標記的第二頁而到達update.asp。

  另外,你還可以使用值索引。但由于它們被忽略時是默認值,因此這是沒有必要的,而且這樣做沒有意義。

  如果你使用的是IIS,那么應該總是使用定制的 HTTP 頭文件來執行< META > 標記方法。從理論上講,一個robot 對以這種方式創建的< META > 標記的反應應該是完全一樣的,看起來是這樣:

< META HTTP-EQUIV="robots" CONTENT="noindex" >

  從理論上講,現在我們就可以對所有的文件夾或文件夾中的文件或虛擬路徑使用IIS創建的定制頭文件。但是到目前為止,這種方法的測試并不成功。這些方法都不能完全保證將你的頁面藏起來。確實,如果有人故意寫一個robot 去找到你的私用頁面的話,他們反而成了指向作者想要保護的頁面的指針。但是,對于防止商業站點索引頁面來說,這些方法還是奏效的,也只有在這方面是有意義的。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 蒲江县| 扶绥县| 易门县| 广安市| 孟村| 亳州市| 大荔县| 盐城市| 沂源县| 贵港市| 昭通市| 教育| 托里县| 丁青县| 新建县| 拉萨市| 巴东县| 吉林省| 林周县| 信宜市| 莆田市| 高尔夫| 闽清县| 吴忠市| 乡城县| 沙湾县| 万全县| 桐庐县| 洱源县| 辽宁省| 进贤县| 咸宁市| 太原市| 板桥市| 威宁| 绥江县| 怀来县| 固原市| 沧州市| 石柱| 龙岩市|