SEO網(wǎng)站優(yōu)化工具.htaccess文件
  • 更新時(shí)間:2024-11-07 10:58:08
  • 網(wǎng)站建設(shè)
  • 發(fā)布時(shí)間:1年前
  • 352

既然是技術(shù)人員,實(shí)際的代碼是必不可少的。鑒于目前的網(wǎng)站大多采用PHP+MYSQL作為主流的建站程序,所以我們要特別注意網(wǎng)站的配置文件。本文為筆者收集整理了幾乎所有的.htaccess文件配置和使用方法及其作用,合集來(lái)源于網(wǎng)絡(luò)。

【301永久重定向】

使用301永久重定向來(lái)避免www和根域名的重量是一個(gè)很好的習(xí)慣和方法,但是從http頭設(shè)置它有一些缺點(diǎn)。一是增加網(wǎng)頁(yè)的http響應(yīng)數(shù),延長(zhǎng)頁(yè)面的響應(yīng)時(shí)間。另一個(gè)是比較Easy to set as 302 temporary redirects。所以作者推薦使用.htaccess文件對(duì)網(wǎng)站進(jìn)行301永久重定向。

為什么這個(gè)搜索引擎友好?因?yàn)楝F(xiàn)在許多現(xiàn)代搜索引擎都具有通過(guò)檢查301 永久重定向來(lái)更新其現(xiàn)有記錄的能力。

代碼如下(以作者博客www.AAA.com為例):

重寫(xiě)引擎開(kāi)啟

RewriteCond %{http_host} ^AAA.com [NC]

重寫(xiě)規(guī)則^(.*)$ http://www.AAA.com/$1 [L,R=301]

這是為了讓它在訪問(wèn)AAA.com/時(shí)自動(dòng)重定向到www.AAA.com。同樣,我們也可以反向設(shè)置,即訪問(wèn)www.AAA.com時(shí)自動(dòng)重定向到AAA.com:

重寫(xiě)引擎開(kāi)啟

RewriteCond %{http_host} ^ www.AAA.com [NC]

重寫(xiě)規(guī)則^(.*)$ http://AAA.com/$1 [L,R=301]

[自定義錯(cuò)誤頁(yè)面]

有些主機(jī)只能在后臺(tái)設(shè)置404錯(cuò)誤頁(yè)面,使用.htaccess文件為每個(gè)錯(cuò)誤代碼自定義自己的錯(cuò)誤頁(yè)面。

代碼如下:

錯(cuò)誤文檔401 /error/401.php

錯(cuò)誤文檔403 /error/403.php

錯(cuò)誤文檔404 /error/404.php

錯(cuò)誤文檔500 /error/500.php

【壓縮文件】

通過(guò)壓縮網(wǎng)站上的靜態(tài)資源和其他文件的體積來(lái)優(yōu)化網(wǎng)站訪問(wèn)速度。它可以壓縮文本、html、javascript、css、xml 和其他文件。

代碼如下

AddOutputFilterByType DEFLATE 文本/純文本

AddOutputFilterByType DEFLATE 文本/html

AddOutputFilterByType DEFLATE 文本/xml

AddOutputFilterByType DEFLATE 文本/CSS

AddOutputFilterByType DEFLATE 應(yīng)用程序/xml

AddOutputFilterByType DEFLATE application/xhtml+xml

AddOutputFilterByType DEFLATE 應(yīng)用程序/rss+xml

AddOutputFilterByType DEFLATE 應(yīng)用程序/javacript

AddOutputFilterByType DEFLATE 應(yīng)用程序/x-javascript

【靜態(tài)資源瀏覽器緩存設(shè)置】

對(duì)于那些不經(jīng)常變化的文件,設(shè)置靜態(tài)文件緩存非常重要,可以大大提高頁(yè)面訪問(wèn)率,也是雅虎YSLow評(píng)價(jià)標(biāo)準(zhǔn)的重要項(xiàng)目之一。

代碼如下:

ExpiresActive on //打開(kāi)緩存

ExpiresByType text/css 'access 1 month'//css文件緩存1個(gè)月

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個(gè)月

ExpiresByType image/jpeg 'access 1 month'//jpeg圖片緩存1個(gè)月

ExpiresByType im

age/x-icon "access 1 month"http://icon緩存1個(gè)月

ExpiresByType image/gif "access 1 month"http://gif圖片緩存一個(gè)月

ExpiresByType image/png "access 1 month"http://png圖片緩存一個(gè)月

ExpiresByType image/ico "access 1 month"http://ico緩存1個(gè)月

ExpiresByType application/pdf "access 1 month"http://pdf文件緩存一個(gè)月

ExpiresByType application/x-shockwave-flash "access 1 month"http://flash緩存一個(gè)月

ExpiresDefault "access 1 month"http:// 默認(rèn)(未提及的可緩存文件)緩存1個(gè)月

【對(duì)某些文件類(lèi)型禁止使用緩存】

網(wǎng)站有很多動(dòng)態(tài)文件是不可以讓瀏覽器緩存的,這樣,我們就需要限定禁止緩存的文件。

代碼如下:

Header unset Cache-Control

【允許訪問(wèn)與阻止IP訪問(wèn)】

你可以使用以下命令封禁一個(gè)IP地址,對(duì)于醫(yī)療行業(yè)來(lái)說(shuō),惡意點(diǎn)擊的競(jìng)價(jià)推廣及商務(wù)通的代碼就可以使用這個(gè)來(lái)阻止競(jìng)爭(zhēng)對(duì)手了。

代碼如下:

deny from 000.000.000.000

這里的000.000.000.000是被封禁的IP地址,如果你只指明了其中的幾個(gè),則可以封禁整個(gè)網(wǎng)段的地址。如你輸入210.10.56.*,則將封禁210.10.56.0~210.10.56.255的所有IP地址。

你也可以使用以下命令允許一個(gè)IP地址訪問(wèn)網(wǎng)站。

代碼如下:

allow from 000.000.000.000

被允許的IP地址則為000.000.000.000,你可以象封禁IP地址一樣封禁整個(gè)網(wǎng)段。

如果你想阻止所有人訪問(wèn)該目錄,則可以這樣。

代碼如下:

deny from all

需要注意的是,不過(guò)這并不影響腳本程序使用這個(gè)目錄下的文檔,只是禁止用戶(hù)訪問(wèn)(或許會(huì)有人想到用它來(lái)只允許蜘蛛訪問(wèn)吧)。

【圖片防盜鏈】

下面的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)站的安全等級(jí),你可以去掉下面的幾行代碼,這樣可以防止一些常見(jiàn)惡意URL匹配的黑客攻擊技術(shù)。對(duì)于醫(yī)療網(wǎng)站來(lái)說(shuō),競(jìng)爭(zhēng)對(duì)手攻擊商務(wù)通 的彈窗代碼導(dǎo)致一段時(shí)間內(nèi)爆發(fā)出成千上萬(wàn)的對(duì)話是非常難以防范和應(yīng)對(duì)的,所以我們可以使用.htaccess來(lái)保護(hù)我們的商務(wù)通。

代碼如下:

RewriteEngine On

# proc/self/environ? 沒(méi)門(mén)!

RewriteCond %{QUERY_STRING} proc/self/environ [OR]

# 阻止腳本企圖通過(guò)URL修改mosConfig值

RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D)[OR]

# 阻止腳本通過(guò)URL傳遞的base64_encode垃圾信息

RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]

# 阻止在URL含有<script>標(biāo)記的腳本

RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E)[NC,OR]

# 阻止企圖通過(guò)URL設(shè)置PHP的GLOBALS變量的腳本

RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2})[OR]

# 阻止企圖通過(guò)URL設(shè)置PHP的_REQUEST變量的腳本

RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})

# 把所有被阻止的請(qǐng)求轉(zhuǎn)向到403禁止提示頁(yè)面!

RewriteRule ^(.*)$ index.php [F,L]

【阻止所有人訪問(wèn)你的網(wǎng)站文件】

下面的代碼可以阻止別人訪問(wèn)你的.htaccess文件。同樣,你也可以設(shè)定阻止多種文件類(lèi)型。

【保護(hù)你的htaccess 文件】

代碼如下:

<Files .htaccess>

order allow,deny

deny from all

</Files>

【阻止查看指定的文件】

<Files secretfile.jpg>

order allow,deny

deny from all

</Files>

【阻止查看指定的多種文件類(lèi)型】

<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">

Order Allow,Deny

Deny from all

</FilesMatch>

【重命名.htaccess 文件】

既然.htaccess如此重要,我們需要對(duì)它進(jìn)行保護(hù),修改它的文件名是保護(hù)它的方法之一。

代碼如下:

AccessFileName htacc.ess

【通過(guò)引用信息來(lái)阻止某些不歡迎的瀏覽者】

代碼如下:

《IfModule mod_rewrite.c》

RewriteEngine on

RewriteCond %{HTTP_REFERER} AAA.com [NC,OR]

RewriteCond %{HTTP_REFERER} seowto.com [NC,OR]

RewriteRule .* - [F]

8.</ifModule>

【通過(guò)判斷瀏覽器頭信息來(lái)阻止某些請(qǐng)求】

這個(gè)方法可以通過(guò)阻止某些機(jī)器人或蜘蛛爬蟲(chóng)抓取你的網(wǎng)站來(lái)節(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í)行,加強(qiáng)你的目錄安全】

AddHandler cgi-script.php .pl .py .jsp .asp .htm .shtml .sh .cgi

Options -ExecCGI

【禁止目錄瀏覽】

禁止服務(wù)器對(duì)外顯示目錄結(jié)構(gòu),反之亦然。

【禁止目錄瀏覽】

代碼如下:

Options All -Indexes

# 開(kāi)放目錄瀏覽

代碼如下:

Options All +Indexes

【改變?nèi)笔〉腎ndex頁(yè)面】

代碼如下:

你可以把缺省的index.html,index.php 或index.htm 改成其它頁(yè)面。

DirectoryIndex business.html

本文發(fā)布于北京網(wǎng)站建設(shè)公司推來(lái)客http://www.tlkjt.com/

我們專(zhuān)注高端建站,小程序開(kāi)發(fā)、軟件系統(tǒng)定制開(kāi)發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開(kāi)發(fā)、各類(lèi)API接口對(duì)接開(kāi)發(fā)等。十余年開(kāi)發(fā)經(jīng)驗(yàn),每一個(gè)項(xiàng)目承諾做到滿意為止,多一次對(duì)比,一定讓您多一份收獲!

本文章出于推來(lái)客官網(wǎng),轉(zhuǎn)載請(qǐng)表明原文地址:https://www.tlkjt.com/web/13343.html
推薦文章

在線客服

掃碼聯(lián)系客服

3985758

回到頂部