常用的8個.htaccess代碼

htAccess 文件(Hypertext Access file)是Apache Web服務器的一個非常強大的配置文件,對於這個文件,Apache有一堆參數可以讓你配置出幾乎隨心所欲的功能。
1.使用.htaccess擋掉搜尋引擎機蜘蛛
2.使用.htaccess封鎖某國家IP網段
3.使用.htaccess防止圖片、文件盜鏈
4.使用.htaccess來保護主機下的目錄與文件
5.使用.htaccess 自定義的出錯頁面
6.把某些特殊的IP地址的請求重定向到別的站點
7.把老的域名轉像新的域名
8.更改默認首頁/默認文檔順序
使用:創建名爲 .htaccess 的文件(用工具比如UE另存爲.htaccess,windows記事本不行),放到站點程序根目錄即可生效.
使用.htaccess擋掉搜尋引擎機蜘蛛
擋掉百度搜尋引擎
百度是傳說中的暴力搜尋引擎,不遵守搜尋引擎的規則,若你嘗試使用robot.txt來擋住,那非常恭喜你,絕對無效。所以一定要使用比較暴力、強硬的手段才能,因此透過.htaccess就可以處理了,如果你要擋掉一些搜尋引擎(像是百度、搜狗等),那請將以下程式碼貼到htaccess.txt文件中。
 
SetEnvIfNoCase User-Agent “^Baidu” bad_bot
SetEnvIfNoCase User-Agent “^sogou” bad_bot
SetEnvIfNoCase User-Agent “^Bloghoo” bad_bot
SetEnvIfNoCase User-Agent “^Scooter” bad_bot
Deny from env=bad_bot

 
 擋掉Google搜尋引擎
如果你想要擋掉Google搜尋引擎,當然也可以透過.htaccsee擋掉,只要輸入以下程式碼就可以了,如果要連同暴力百度搜尋引擎一起封鎖,那就把這兩串程式碼放在同一個htaccsee.txt文件中。
 
SetEnvIf User-Agent “^Googlebot” google
Deny from env=google

 
 用.htaccess封鎖某國家IP網段
有時候自己可能會規畫網站的發展方向,有不歡迎某些特定的國家來訪,這時候第一個想法應該是要鎖該國家的IP,但是卻不知從何做起?因爲不知道那個國家的IP跟本不能鎖,這時候可以透過「blockacountry」線上工具網站產生的htaccess語法來替自己封鎖想要封鎖的IP網段國家。
第1步 來到Block a country(http://www.blockacountry.com) 網站首頁,首先你會看到一個框框,框框中有許多國家,請您挑選要封鎖的國家,可以複選,選擇完成後請點擊下方的﹝Block Now!﹞。
[/url]
[url=http://help.vit.cn/upimg/userup/1004/15160Z0C43.jpg]
 
第2步 將剛剛網頁上產生的程式碼貼到htaccess文件中,然後儲存。Apache對於被拒絕的IP會返回403錯誤。
用.htaccess防止圖片、文件盜鏈
一個圖文並茂的網站,最怕的就是文章轉貼,雖然現一直在尊重着作權法,但還是有許多人假裝沒看見?許多人喜歡「複製→貼上」,但這樣一個轉貼動作卻會對一個網站造成莫大的傷害,除了辛苦寫的文章被偷走外,連圖片也盜鏈!圖片或文件被盜連最怕的就是後續的流量,爲了避免這種問題,我們必須自立自強,防止盜鏈這種可惡的行爲!
如果是cPanel虛擬主機,防盜連的方法不外乎就是到cPanel後臺進行設定。如果你是其他類型的空間後臺或者是說你只有FTP權限的空間,那該怎麼辦呢?其實只要你的空間支持.htaccess文件並且支持ReWrite,你都可以防止圖片與文件的盜鏈!
通過.htaccess來防止網站的圖片、壓縮文件、或視頻等非Html文件被盜鏈的方法相當簡單,通過在該文件中加入幾句命令即可保護我們寶貴的帶寬。例如chinaz.com的設置如下:
 
以下爲引用的內容:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !nobing.cn [NC]
RewriteCond %{HTTP_REFERER} !google.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteCond %{HTTP_REFERER} !www.domain.com [NC]
RewriteRule .*\.(gif|jpg)$ http://www.admin5.com/no.png [R,NC,L]

 
 代碼詳細介紹:Apache服務器使用.htaccess實現圖片防盜鏈
利用.htaccess來保護主機下的目錄與文件
一般來說很多虛擬主機預設是沒有開啓保護網站主機目錄下的文件,其實很危險的,假若你的目錄下忘記放置index文件,那很可能您目錄就被看光,一個不小心很可能重要資料就被拿走,這是蠻嚴重的一件事情。如果是Linux主機,我們可以透過簡易的.htaccess語法來保護網站主機目錄下的文件,讓別人無法輕易看見。
平常我們使用的最簡單保護目錄的方法,莫過於使用「index.php」、「index.html」等等之類的網站index文件,因爲主機內預設的設定在目錄中預設就是要抓index文件,而index文件通常會有很多種,主機會依續排列下來抓取,所以可以設定index文件來讓主機抓取,以達到保護目錄的效果。但如果主機需要的index文件沒有一個存在,這時候主機就會直接顯示目錄內的東西了,因爲主機不知道要抓取誰當作主要網頁,所以會全部顯示。
雖然使用index文件來保護目錄是可行的,但是每個子目錄都需要傳一個index文件其實蠻累人的,這時候我們就可以利用「.htaccess」來批量處理。
 
Options -Indexes

 
語法的進階使用
當然該語法還有其他相關的用途,以下列出簡單的幾項供大家參考使用,如果你覺得以下的語法不是你想要或是想學更多,你可以到Apache官方網站來看看英文說明書,查看看還有什麼關於「indexoptions」的用途或是其他不錯的功能喔!
Options +Indexes:顯示目錄下所有文件
Options -Indexes:隱藏目錄下所有文件 (上面已經介紹過)
IndexOptions +FancyIndexing:顯示目錄下所有文件,文件前面包含檔案類型的小圖示
IndexOptions -FancyIndexing : 顯示目錄下所有文件,但不包含文件類型的小圖示
IndexIgnore *.php *.exe:隱藏特定的文件, 其餘文件正常顯示(隱藏所有的php和exe文件)
使用.htaccess 創建自定義的出錯頁面
對於Linux Apache來說這是一項極其簡單的事情。使用下面的.htaccess語法你可以輕鬆的完成這一功能。(把.htaccess放在你的網站根目錄下)
 
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php後綴可隨意更改爲服務器支持的格式,如: ErrorDocument 401 /error/401.htm

 
 把某些特殊的IP地址的請求重定向到別的站點
 
ErrorDocument 403 http://www.youdomain.comOrder deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123

 
把老的域名轉像新的域名
 
# redirect from old domain to new domain
RewriteEngine On
RewriteRule ^(.*) $http://www.yourdomain.com/$1 [R=301,L]

 
更改默認首頁/默認文檔順序
 
DirectoryIndex filename.ext index.html index.htm index.php index.cgi index.pl index.shtml

 
發佈了27 篇原創文章 · 獲贊 0 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章