麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網(wǎng)站 > Apache > 正文

apache的htaccess文件語法詳解

2024-08-27 18:22:20
字體:
供稿:網(wǎng)友

htaccess文件我想對(duì)于站來講并不陌生了,他的作用可以在另一個(gè)層面來講可替換apache一些功能了,但是在apache寫一些規(guī)則要比在htaccess要快很多,這個(gè)就不多介紹了,下面主要介紹htaccess文件用法。

Apache系統(tǒng)中的.htaccess文件(也稱“分布式配置文件”)提供了針對(duì)目錄改變配置的方法,也就是在一個(gè)特定的文檔目錄中放置一個(gè)包含指令的文件, 以作用于此目錄及其所有子目錄。直白的說,.htaccess文件只是一個(gè)簡單的文檔,可以在里面加些簡單的命令實(shí)現(xiàn)各種不同的設(shè)置。

如何知道主機(jī)是否支持.htaccess?

其實(shí)大部分主機(jī)都支持.htaccess,但實(shí)際上你的主機(jī)提供商并不會(huì)特別聲明。一般來說,如果你的主機(jī)使用Unix或Linux系統(tǒng),或任何版本的Apache網(wǎng)絡(luò)服務(wù)器,理論上都是支持.htaccess的,但是有的主機(jī)服務(wù)商有可能不允許你使用它。判斷你的主機(jī)是否允許.htaccess,一個(gè)很好的方法是看它是否支持文件夾密碼保護(hù)。為達(dá)到此功能,主機(jī)服務(wù)商需要使用.htaccess(當(dāng)然,少數(shù)情況下他們雖提供密碼保護(hù)功能,但卻并不允許你使用.htaccess)。最好的辦法是上傳你自己的.htaccess文件看看是否有用,或者直接向你的主機(jī)服務(wù)商咨詢。

.htaccess文件可以做什么?

.htaccess文件可以做大量的事情,包括:文件夾密碼保護(hù)、用戶自動(dòng)重定向、自定義錯(cuò)誤頁面、改變你的文件擴(kuò)展名、封禁特定IP地址的用戶、只允許特定IP地址的用戶、禁止目錄列表,以及使用其他文件作為index文件等等。下面園子將列舉幾個(gè)常用的功能與大家分享。

使用.htaccess文件自定義404錯(cuò)誤頁

.htaccess文件最常用的功能應(yīng)該就是自定義404頁面了,其操作也非常簡單,在.htaccess 文件中加入代碼:

  1. ErrorDocument 404 /Error.html 

然后建立一個(gè)簡單的html404頁面并命名 Error.html,把 Error.html放置在網(wǎng)站根目錄即可。

當(dāng)然,如果你的404文件不在網(wǎng)站的根目錄下,你只需要把路徑設(shè)置為:

  1. ErrorDocument 404/errors/Error.html 

以下列舉了網(wǎng)站上一些最常用的錯(cuò)誤類型:

401 – Authorization Required 需要驗(yàn)證 

400 – Bad request 錯(cuò)誤請(qǐng)求 

403 – Forbidden 禁止 

500 – Internal Server Error 內(nèi)部服務(wù)器錯(cuò)誤 

404 – Wrong page 找不到頁面

你可以有選擇的創(chuàng)建錯(cuò)誤時(shí)的文件,然后在.htaccess文件里面進(jìn)行定義(方法和404頁面的方法一樣),上傳到你的網(wǎng)站上即可。

1.時(shí)區(qū)設(shè)置

有些時(shí)候,當(dāng)你在PHP里使用date或mktime函數(shù)時(shí),由于時(shí)區(qū)的不同,它會(huì)顯示出一些很奇怪的信息。下面是解決這個(gè)問題的方法之一。就是設(shè)置你的服務(wù)器的時(shí)區(qū)。你可以在這里找到所有支持的時(shí)區(qū)的清單。

SetEnv TZ Australia/Melbourne

2. seo搜索引擎友好的301永久轉(zhuǎn)向方法

為什么這是搜索引擎友好的呢?因?yàn)楝F(xiàn)在很多現(xiàn)代的搜索引擎都有能根據(jù)檢查301永久轉(zhuǎn)向來更新它現(xiàn)有的記錄的功能。

  1. Redirect 301 http://www.companysz.com  http://www.companysz.com/ 

3. 屏蔽下載對(duì)話框

通常,當(dāng)你下載東西的時(shí)候,你會(huì)看到一個(gè)對(duì)話框詢問你是保持這個(gè)文件還是直接打開它。如果你不想看到這個(gè)東西,你可以把下面的一段代碼放到你的.htaccess文件里。

  1. AddType application/octet-stream .pdf  
  2. AddType application/octet-stream .zip  
  3. AddType application/octet-stream .mov 

4. 省去www前綴

SEO的一個(gè)原則是,確保你的網(wǎng)站只有一個(gè)URL。因此,你需要把所有的通過www的訪問轉(zhuǎn)向的非www,或者反這來。

  1. RewriteEngine On  
  2. RewriteBase /  
  3. RewriteCond %{HTTP_HOST} ^www.companysz.com [NC]  
  4. RewriteRule ^(.*)$ http://Vevb.com/$1 [L,R=301] 

5. 個(gè)性化Error頁面

對(duì)每個(gè)錯(cuò)誤代碼定制自己個(gè)性化的錯(cuò)誤頁面。
 
  1. ErrorDocument 401 /error/401.php  
  2. ErrorDocument 403 /error/403.php  
  3. ErrorDocument 404 /error/404.php  
  4. ErrorDocument 500 /error/500.php 

6. 壓縮文件

通過壓縮你的文件體積來優(yōu)化網(wǎng)站的訪問速度。
 
  1. # 壓縮 text, html, javascript, css, xml:  
  2. AddOutputFilterByType DEFLATE text/plain  
  3. AddOutputFilterByType DEFLATE text/html  
  4. AddOutputFilterByType DEFLATE text/xml  
  5. AddOutputFilterByType DEFLATE text/css  
  6. AddOutputFilterByType DEFLATE application/xml  
  7. AddOutputFilterByType DEFLATE application/xhtml+xml  
  8. AddOutputFilterByType DEFLATE application/rss+xml  
  9. AddOutputFilterByType DEFLATE application/javascript  
  10. AddOutputFilterByType DEFLATE application/x-javascript 

7. 緩存文件

緩存文件是另外一個(gè)提高你的網(wǎng)站訪問速度的好方法。

  1. <FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">  
  2. Header set Cache-Control "max-age=2592000" 
  3. </FilesMatch> 

8. 對(duì)某些文件類型禁止使用緩存

而另一方面,你也可以定制對(duì)某些文件類型禁止使用緩存,顯式的規(guī)定對(duì)腳本和其它動(dòng)態(tài)文件禁止使用緩存。

  1. <FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">  
  2. Header unset Cache-Control  
  3. </FilesMatch> 

安全問題

下面的htaccess代碼能夠提高你的web服務(wù)器的安全水平。圖片鏈接盜用保護(hù)非常有用,它能防止其他人偷盜使用你的服務(wù)器上的圖片資源。

1. 通過.htaccess放盜鏈

痛恨那些偷盜鏈接你的web服務(wù)器上的圖片資源而耗盡了你的帶寬的行為嗎?試試這個(gè),你可以防止這種事情的發(fā)生。

  1. RewriteBase /  
  2. RewriteCond %{HTTP_REFERER} !^$  
  3. RewriteCond %{HTTP_REFERER} !^http://(www.)?Vevb.com/.*$ [NC]  
  4. RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L] 

2. 防黑客

如果你想提高網(wǎng)站的安全等級(jí),你可以加上下面的幾行代碼,這樣可以防止一些常見惡意URL匹配的黑客攻擊技術(shù)。
 
  1. RewriteEngine On 
  2. # proc/self/environ? 沒門!  
  3. 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}) 

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

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

3. 阻止訪問你的 .htaccess 文件

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

  1. # 保護(hù)你的 htaccess 文件  
  2. <Files .htaccess>  
  3. order allow,deny  
  4. deny from all  
  5. </Files>  
  6.  
  7. # 阻止查看指定的文件  
  8. <Files secretfile.jpg>  
  9. order allow,deny  
  10. deny from all  
  11. </Files>  
  12.  
  13. # 多種文件類型  
  14. <FilesMatch “.(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$”>  
  15. Order Allow,Deny  
  16. Deny from all  
  17. </FilesMatch> 

4. 重命名 htaccess 文件

你可以通過重命名htaccess文件來對(duì)其進(jìn)行保護(hù)。

  1. AccessFileName htacc.ess 

5. 禁止目錄瀏覽

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

  1. # 禁止目錄瀏覽  
  2. Options All -Indexes  
  3. # 開放目錄瀏覽 
  4. Options All +Indexes 

6. 改變?nèi)笔〉腎ndex頁面

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

  1. DirectoryIndex business.html 

7. 通過引用信息來阻止某些不歡迎的瀏覽者

  1. # 阻止來自某網(wǎng)站的用戶  
  2. <IfModule mod_rewrite.c>  
  3. RewriteEngine on  
  4. RewriteCond %{HTTP_REFERER} scumbag.com [NC,OR]  
  5. RewriteCond %{HTTP_REFERER} wormhole.com [NC,OR]  
  6. RewriteRule .* - [F] 
  7. </ifModule> 

8. 通過判斷瀏覽器頭信息來阻止某些請(qǐng)求

這個(gè)方法可以通過阻止某些機(jī)器人或蜘蛛爬蟲抓取你的網(wǎng)站來節(jié)省你的帶寬流量。

  1. # 阻止來自某些特定網(wǎng)站的用戶  
  2. <IfModule mod_rewrite.c>  
  3. 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  
  4. </ifModule> 

9. 禁止腳本執(zhí)行,加強(qiáng)你的目錄安全

  1. # 禁止某些目錄里的腳本執(zhí)行權(quán)限  
  2. AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi  
  3. Options -ExecCGI 

使用.htaccess文件實(shí)現(xiàn)網(wǎng)站目錄密碼保護(hù)

有時(shí)候你可能會(huì)針對(duì)某個(gè)目錄設(shè)定對(duì)應(yīng)的密碼保護(hù),首先要做的是生成一個(gè).htpasswd的文檔,然后輸入用于訪問網(wǎng)站的用戶名和密碼,格式為:username:password

其中“password”的位置應(yīng)該是加密過的密碼。另外需要注意的是.htpasswd文檔的位置最好放在www目錄之外,這樣相對(duì)會(huì)安全一些。最后在.htaccess中加入如下指令:

  1. AuthUserFile /full/path/to/.htpasswd (.htpasswd的服務(wù)器目錄) 
  2. AuthGroupFile /dev/null (需要授權(quán)訪問的目錄) 
  3. AuthName EnterPassword 
  4. AuthType Basic (授權(quán)類型)  
  5. Require valid-user 

這樣就完成了使用.htaccess文件實(shí)現(xiàn)網(wǎng)站目錄密碼保護(hù)。

注:在使用.htaccess來設(shè)置目錄的密碼保護(hù)時(shí),它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護(hù)起來,不讓別人看到其中的內(nèi)容。最簡單的方法是在.htaccess文件中加入如下指令即可:

  1. order allow,deny 
  2. deny from all 

使用.htaccess文件拒絕某個(gè)IP的訪問

其實(shí)這個(gè)功能也經(jīng)常用到,有時(shí)候你可能要禁止某個(gè)或者某段IP訪問到你的網(wǎng)站,你就可以通過在.htaccess中加入類似如下的代碼來實(shí)現(xiàn):

  1. order allow,deny 
  2. deny from 220.156.156.55 
  3. deny from 220.156.156. 
  4. allow from all 

其中的第二行代碼為拒絕某個(gè)IP,第三行是拒絕某個(gè)IP段,也就只要IP地址在220.156.156.0~220.156.156.255 之前的IP段都無法再訪問你的站點(diǎn)。如果你想阻止所有人訪問該目錄,則可以使用:

  1. deny from all 

使用.htaccess文件防盜鏈

很多站長都會(huì)遇到比較郁悶的問題,就是有些人會(huì)經(jīng)常盜鏈自己網(wǎng)站的圖片、軟件等資源,這樣造成了不必要的流量浪費(fèi)。想要防止盜鏈簡單的做法是在.htaccess文件加入如下指令:

  1. RewriteEngine on 
  2. RewriteCond %{ HTTP_REFERER } !^$ 
  3. RewriteCond %{ HTTP_REFERER } !^http://(www.)?mydomain.com/.*$ [NC] 
  4. RewriteRule .(gif&line;jpg)$ - [F] 

如果你想避免此方法給那些盜鏈你的網(wǎng)站帶來不友好的空白,你可以做一張圖片來代替,這張圖片也可以適當(dāng)?shù)男麄髂阕约旱木W(wǎng)站。指令如下:

  1. RewriteEngine on 
  2. RewriteCond %{ HTTP_REFERER } !^$ 
  3. RewriteCond %{ HTTP_REFERER } !^http://(www.)?Vevb.com/.*$ [NC] 
  4. RewriteRule .(gif&line;jpg)$ http://www.companysz.com/替代圖片文件名 [R,L] 

使用.htaccess文件改變?nèi)笔〉氖醉撐募?/p>

這一點(diǎn)也比較常用,如果你的站點(diǎn)是使用PHP來架構(gòu)的,你可以只想定義index.php為缺省的首頁文件,通過.htaccess文件可以輕松做到這點(diǎn)。代碼如下:

  1. DirectoryIndex index.php index.php3 messagebrd.pl index.html index.htm 

服務(wù)器會(huì)從左至右進(jìn)行尋找,檢查哪個(gè)文檔在你的網(wǎng)站目錄中存在。先找到的文件即是你網(wǎng)站的缺省首頁文件。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 精品久久久一二三区播放播放播放视频 | 久久老司机精品视频 | 中文字幕免费播放 | 女人解衣喂奶电影 | 久久久久久久久成人 | 欧美 日韩 亚洲 中文 | gogo全球大胆高清人露出91 | 哪里可以看免费的av | 99精美视频| 成人免费观看49www在线观看 | 一级免费大片 | 成人三级电影网 | 欧美精品成人一区二区在线观看 | 国产精品久久77777 | 国产欧美日韩视频在线观看 | 日韩欧美电影一区二区三区 | 一级做a爱片性色毛片 | 亚洲日本高清 | 黄色特级一级片 | www国产免费 | 亚久久| 俄罗斯16一20sex牲色另类 | 成人免费av在线播放 | 中文字幕在线免费播放 | 2021国产精品 | 主播粉嫩国产在线精品 | 99视频网址 | 国产精品啪一品二区三区粉嫩 | 亚洲无毛av | 又黄又爽免费无遮挡在线观看 | 91精品观看91久久久久久国产 | 精品国产一区二区三区久久久狼牙 | 国产一区网址 | 欧美人与zoxxxx另类9 | 成人国产精品一区 | 久久久久国产成人精品亚洲午夜 | 成人三级电影网址 | 成人福利视频导航 | 蜜桃网在线观看 | 国产一有一级毛片视频 | 性大片1000免费看 |