.htaccess設定集

由 Derek 發表於 七月 29, 2011 / 尚無評論

 

今天在整理資料時,在一個名叫「老兵日記」的資料夾中,找到了這篇有關htaccess的相關設定。

因此整理了一下,分享給有需要的人。

 

# protect the htaccess file

#保護特定檔案/頁面

<files 檔案名稱>

order allow,deny

deny from all

</files>

 

 

# limit file uploads to 10mb

#設定頁面上傳限制

LimitRequestBody 10240000


 

#who has access who doesnt

#阻擋來源

order allow,deny

deny from 000.000.000.000

allow from all

 

 

#custom error docs

#自訂錯誤訊息畫面

ErrorDocument 404 /notfound.php

ErrorDocument 403 /forbidden.php

ErrorDocument 500 /error.php

 

 

# disable directory browsing

#關閉目錄瀏覽

Options All -Indexes

 

 

#redirect old to new

#頁面導向

Redirect 301 /old.php <a href="http://www.yourdomain.com/new.php" title="http://www.yourdomain.com/new.php">http://www.yourdomain.com/new.php</a>

 

 

#block referring domains

#防止hotlink

RewriteEngine on

RewriteCond %{HTTP_REFERER} digg\.com [NC]

RewriteRule .* – [F]

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

//允許的連結

RewriteCond %{HTTP_REFERER} !^http://www.letsbike.org(.*) [NC]     

//允許的連結

RewriteRule \.(jpg|jpeg|gif|css|swf|png|bmp|rar|zip|exe)$ – [F]

//拒絕的檔案格式,只要連結包含指定檔名/副檔名,則看到403錯誤訊息。

RewriteRule .(jpg|gif|png|bmp|swf|jpeg) /image/replace.gif [R,NC,L]

//這部分是判斷是否盜鏈如果市則替換圖片為/image/replace.gif

#設定檔案防盜連

 

 

#disable hotlinking of images with forbidden or custom image option

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain.com/.*$ [NC]

#RewriteRule \.(gif|jpg)$ – [F]

#RewriteRule \.(gif|jpg)$ <a href="http://www.yourdomain.com/stealingisbad.gif" title="http://www.yourdomain.com/stealingisbad.gif">http://www.yourdomain.com/stealingisbad.gif</a> [R,L]

 

 

# php compression – use with caution

#PHP壓縮

<ifmodule mod_php4.c>

php_value zlib.output_compression 16386

</ifmodule>

 

 

# set the canonical url

#搜尋引擎最佳化

RewriteEngine On

RewriteCond %{HTTP_HOST} ^yourdomain\.com$ [NC]

RewriteRule ^(.*)$ http://www.yourdomain.com/$1 [R=301,L]

 

 

# protect from spam comments

#避免垃圾回應(1)

RewriteEngine On

RewriteCond %{REQUEST_METHOD} POST

RewriteCond %{REQUEST_URI} .wp-comments-post\.php*

RewriteCond %{HTTP_REFERER} !.*yourdomain.com.* [OR]

RewriteCond %{HTTP_USER_AGENT} ^$

RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]

 

 

#避免垃圾回應(2)

#這招的原理是這樣幾乎所有的 browser User-Agent 都有 Mozilla 這個字串 (IE也有喔)trackback 理論上是由 server 而非 browser 送出所以如果 POST 到你的 trackback 的人帶了 Mozilla 字串的話它一定是有問題的另一條規則是如果來 trackback 的不帶 User-Agent 的話也是有問題的。

<Files trackback>

<Limit POST>

SetEnvIf User-Agent Mozilla trackers

SetEnvIf User-Agent ^$ trackers

Order allow,deny

Allow from all

Deny from env=trackers

</Limit>

</Files>

 

 

#設定首頁讀取順序

DirectoryIndex index.html index.html.var index.shtml index.cfm index.php

 

 

#可存取或登入某資料夾中的所有檔案

<Limit GET>

order deny,allow

deny from all

allow from ip網段

allow from ip網段

allow from ip網段

</Limit>

 

 

#禁止非正常PHP程式或方法列出此網站存放之目錄與檔案

Options –Indexes

 

 

#要將allow_url_include off,要on

php_flag allow_url_include On

 

 

 

關於作者

一個半路殺出來的傻小子,憑著一股傻勁努力的學習、嘗試、分享。希望能用自己微薄之力,替IT界和資訊界盡一點心力。單憑一己之力始終還是有限,歡迎和我有相同理念的夥伴一同加入一同努力。

評論

此文章尚無評論。

發表評論

*