既然是技術(shù)人員,那么實際的代碼是必不可少的。鑒于目前很多的站點大多數(shù)使用的都是以PHP+MYSQL為主流的網(wǎng)站程序,那么網(wǎng)站的配置文件是必須受到我們格外重視的。本文為筆者收集和整理了幾乎所有.htaccess文件的配置使用方法及其作用,收集來源于互聯(lián)網(wǎng)。
【301永久重定向】
使用301永久重定向避免www與根域名的權(quán)重是非常好的習(xí)慣和方法,但是從http頭來進(jìn)行設(shè)置有亮點不好,一是增加網(wǎng)頁的http響應(yīng)次數(shù),延長 頁面的響應(yīng)時間,二是比較容易設(shè)置成302臨時重定向。所以筆者建議使用.htaccess文件來進(jìn)行網(wǎng)站的301永久重定向。
為什么這是搜索引擎友好的呢?因為現(xiàn)在很多現(xiàn)代的搜索引擎都有能根據(jù)檢查301永久轉(zhuǎn)向來更新它現(xiàn)有的記錄的功能。
代碼如下(以筆者的博客www.AAA.com為例):
RewriteEngine on
RewriteCond %{http_host} ^AAA.com [NC]
RewriteRule ^(.*)$ http://www.AAA.com/$1 [L,R=301]
這是使訪問AAA.com/的時候就會自動轉(zhuǎn)到www.AAA.com,同樣的,我們也可以反向設(shè)置,即訪問www.AAA.com的時候自動轉(zhuǎn)向至AAA.com:
RewriteEngine on
RewriteCond %{http_host} ^ www.AAA.com [NC]
RewriteRule ^(.*)$ http://AAA.com/$1 [L,R=301]
【自定義Error頁面】
部分主機(jī)僅能在后臺設(shè)置404錯誤頁面,使用.htaccess文件可以對每個錯誤代碼定制自己的錯誤頁面。
代碼如下:
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
【壓縮文件】
通過壓縮你網(wǎng)站上的靜態(tài)資源及其他文件的體積來優(yōu)化網(wǎng)站的訪問速度,它可以通過壓縮text, html, javascript, css, xml等文件。
代碼如下
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javacript
AddOutputFilterByType DEFLATE application/x-javascript
【靜態(tài)資源瀏覽器緩存設(shè)置】
對于那些并不會經(jīng)常有變化更新的文件,設(shè)置靜態(tài)文件緩存是非常非常重要的,它可以極大的提高頁面訪問速率,同樣它也是Yahoo的YSLow評測標(biāo)準(zhǔn)的重要項目之一。
代碼如下:
ExpiresActive on //開啟緩存
ExpiresByType text/css "access 1 month"//css文件緩存1個月
ExpiresByType text/plain "access 2 days"//純文本內(nèi)容緩存2天
ExpiresByType text/html "access 2 days"//html文件緩存2天
ExpiresByType application/javascript "access 1 month"//JS文件緩存1個月
ExpiresByType image/jpeg "access 1 month"//jpeg圖片緩存1個月
ExpiresByType image/x-icon "access 1 month"//icon緩存1個月
ExpiresByType image/gif "access 1 month"//gif圖片緩存一個月
ExpiresByType image/png "access 1 month"//png圖片緩存一個月
ExpiresByType image/ico "access 1 month"//ico緩存1個月
ExpiresByType application/pdf "access 1 month"//pdf文件緩存一個月
ExpiresByType application/x-shockwave-flash "access 1 month"//flash緩存一個月
ExpiresDefault "access 1 month"// 默認(rèn)(未提及的可緩存文件)緩存1個月
【對某些文件類型禁止使用緩存】
網(wǎng)站有很多動態(tài)文件是不可以讓瀏覽器緩存的,這樣,我們就需要限定禁止緩存的文件。
代碼如下:
Header unset Cache-Control
【允許訪問與阻止IP訪問】
你可以使用以下命令封禁一個IP地址,對于醫(yī)療行業(yè)來說,惡意點擊的競價推廣及商務(wù)通的代碼就可以使用這個來阻止競爭對手了。
代碼如下:
deny from 000.000.000.000
這里的000.000.000.000是被封禁的IP地址,如果你只指明了其中的幾個,則可以封禁整個網(wǎng)段的地址。如你輸入210.10.56.*,則將封禁210.10.56.0~210.10.56.255的所有IP地址。
你也可以使用以下命令允許一個IP地址訪問網(wǎng)站。
代碼如下:
allow from 000.000.000.000
被允許的IP地址則為000.000.000.000,你可以象封禁IP地址一樣封禁整個網(wǎng)段。
如果你想阻止所有人訪問該目錄,則可以這樣。
代碼如下:
deny from all
需要注意的是,不過這并不影響腳本程序使用這個目錄下的文檔,只是禁止用戶訪問(或許會有人想到用它來只允許蜘蛛訪問吧)。
【圖片防盜鏈】
下面的htaccess代碼能夠提高你的web服務(wù)器的安全水平。圖片鏈接盜用保護(hù)非常有用,它能防止其他人偷盜使用你的服務(wù)器上的圖片資源。
代碼如下:
RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?aqee.net/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]
【防黑客進(jìn)攻漏洞】
如果你想提高網(wǎng)站的安全等級,你可以去掉下面的幾行代碼,這樣可以防止一些常見惡意URL匹配的黑客攻擊技術(shù)。對于醫(yī)療網(wǎng)站來說,競爭對手攻擊商務(wù)通 的彈窗代碼導(dǎo)致一段時間內(nèi)爆發(fā)出成千上萬的對話是非常難以防范和應(yīng)對的,所以我們可以使用.htaccess來保護(hù)我們的商務(wù)通。
代碼如下:
RewriteEngine On
# proc/self/environ? 沒門!
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
# 阻止腳本企圖通過URL修改mosConfig值
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D)[OR]
# 阻止腳本通過URL傳遞的base64_encode垃圾信息
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# 阻止在URL含有<script>標(biāo)記的腳本
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E)[NC,OR]
# 阻止企圖通過URL設(shè)置PHP的GLOBALS變量的腳本
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2})[OR]
# 阻止企圖通過URL設(shè)置PHP的_REQUEST變量的腳本
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
# 把所有被阻止的請求轉(zhuǎn)向到403禁止提示頁面!
RewriteRule ^(.*)$ index.php [F,L]
【阻止所有人訪問你的網(wǎng)站文件】
下面的代碼可以阻止別人訪問你的.htaccess文件。同樣,你也可以設(shè)定阻止多種文件類型。
【保護(hù)你的htaccess 文件】
代碼如下:
<Files .htaccess>
order allow,deny
deny from all
</Files>
【阻止查看指定的文件】
<Files secretfile.jpg>
order allow,deny
deny from all
</Files>
【阻止查看指定的多種文件類型】
<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
Order Allow,Deny
Deny from all
</FilesMatch>
【重命名.htaccess 文件】
既然.htaccess如此重要,我們需要對它進(jìn)行保護(hù),修改它的文件名是保護(hù)它的方法之一。
代碼如下:
AccessFileName htacc.ess
【通過引用信息來阻止某些不歡迎的瀏覽者】
代碼如下:
《IfModule mod_rewrite.c》
RewriteEngine on
RewriteCond %{HTTP_REFERER} AAA.com [NC,OR]
RewriteCond %{HTTP_REFERER} seowto.com [NC,OR]
RewriteRule .* - [F]
8.</ifModule>
【通過判斷瀏覽器頭信息來阻止某些請求】
這個方法可以通過阻止某些機(jī)器人或蜘蛛爬蟲抓取你的網(wǎng)站來節(jié)省你的帶寬流量。特別是防采集的效果很好。
代碼如下:
<IfModule mod_rewrite.c>
SetEnvIfNoCase ^User-Agent$ .*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider
|leacher|collector|grabber|webpictures) HTTP_SAFE_BADBOT
SetEnvIfNoCase ^User-Agent$ .*(libwww-perl|aesop_com_spiderman) HTTP_SAFE_BADBOT
Deny from env=HTTP_SAFE_BADBOT
</ifModule>
【禁止腳本執(zhí)行,加強你的目錄安全】
AddHandler cgi-script.php .pl .py .jsp .asp .htm .shtml .sh .cgi
Options -ExecCGI
【禁止目錄瀏覽】
禁止服務(wù)器對外顯示目錄結(jié)構(gòu),反之亦然。
【禁止目錄瀏覽】
代碼如下:
Options All -Indexes
# 開放目錄瀏覽
代碼如下:
Options All +Indexes
【改變?nèi)笔〉腎ndex頁面】
代碼如下:
你可以把缺省的index.html,index.php 或index.htm 改成其它頁面。
DirectoryIndex business.html
網(wǎng)站名稱:seo網(wǎng)站優(yōu)化的利器.htaccess文件
文章源于:http://jinyejixie.com/news29/234929.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、網(wǎng)站維護(hù)、商城網(wǎng)站、軟件開發(fā)、搜索引擎優(yōu)化、網(wǎng)站排名
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)