Htaccess文件是什么以及Windows下自由创建.htaccess文件的N种方法
.htaccess是什么
概述來(lái)說(shuō),htaccess文件是Apache服務(wù)器中的一個(gè)配置文件,它負(fù)責(zé)相關(guān)目錄下的網(wǎng)頁(yè)配置。
通過(guò)htaccess文件,可以幫我們實(shí)現(xiàn):網(wǎng)頁(yè)301重定向、自定義404錯(cuò)誤頁(yè)面、改變文件擴(kuò)展名、允許/阻止特定的用戶(hù)或者目錄的訪問(wèn)、禁止目錄列表、配置默認(rèn)文檔等功能。
Unix、Linux系統(tǒng)或者是任何版本的Apache Web服務(wù)器都是支持.htaccess的,但是有的主機(jī)服務(wù)商可能不允許你自定義自己的.htaccess文件。
國(guó)內(nèi)的大多數(shù)虛擬主機(jī)就沒(méi)有這個(gè)功能。我所知道的提供這個(gè)功能的有康盛世紀(jì)(就是Discuz的論壇服務(wù)商)。
籠統(tǒng)地說(shuō),.htaccess可以幫我們實(shí)現(xiàn)包括:文件夾密碼保護(hù)、用戶(hù)自動(dòng)重定向、自定義錯(cuò)誤頁(yè)面、改變你的文件擴(kuò)展名、封禁特定IP地址的用戶(hù)、只允許特定IP地址的用戶(hù)、禁止目錄列表,以及使用其他文件作為index文件等一些功能。
啟用.htaccess
啟用.htaccess,需要修改httpd.conf,啟用AllowOverride,并可以用AllowOverride限制特定命令的使用。如果需要使用.htaccess以外的其他文件名,可以用AccessFileName指令來(lái)改變。例如,需要使用.config ,則可以在服務(wù)器配置文件中按以下方法配置:AccessFileName .config 。
如何讓自己的本地Apache服務(wù)器支持".htaccess"呢?其實(shí)只要簡(jiǎn)單修改一下apache的httpd.conf設(shè)置就可以讓APACHE支持.htaccess了。打開(kāi)httpd.conf文件(在那里? APACHE目錄的CONF目錄里面),用文本編輯器打開(kāi)后,查找
<Directory /> Options FollowSymLinks AllowOverride None </Directory>
改為
<Directory /> Options FollowSymLinks AllowOverride All </Directory>
就可以了
如何建立.htaccess文件
.htaccess就是一個(gè)普通的文本文件,這樣的文件在windows操作系統(tǒng)中無(wú)法建立,可以先建立一個(gè)htaccess.txt文件,上傳到服務(wù)器以后再修改名車(chē)即可。
.htaccess使用實(shí)例
.htaccess使用實(shí)例收集整理.htaccess的具體應(yīng)用,供大家參考和快速使用。
使用.htaccess文件的場(chǎng)合
一般情況下,不應(yīng)該使用.htaccess文件,除非你對(duì)主配置文件沒(méi)有訪問(wèn)權(quán)限。有一種很常見(jiàn)的誤解,認(rèn)為用戶(hù)認(rèn)證只能通過(guò).htaccess文件實(shí)現(xiàn),其實(shí)并不是這樣,把用戶(hù)認(rèn)證寫(xiě)在主配置文件中是完全可行的,而且是一種很好的方法。
.htaccess文件應(yīng)該被用在內(nèi)容提供者需要針對(duì)特定目錄改變服務(wù)器的配置而又沒(méi)有root權(quán)限的情況下。如果服務(wù)器管理員不愿意頻繁修改配置,則可以允許用戶(hù)通過(guò).htaccess文件自己修改配置,尤其是ISP在同一個(gè)機(jī)器上運(yùn)行了多個(gè)用戶(hù)站點(diǎn),而又希望用戶(hù)可以自己改變配置的情況下。
雖然如此,一般都應(yīng)該盡可能地避免使用.htaccess文件。任何希望放在.htaccess文件中的配置,都可以放在主配置文件的<Directory>段中,而且更高效。
避免使用.htaccess文件有兩個(gè)主要原因。
首先是性能。如果AllowOverride啟用了.htaccess文件,則Apache需要在每個(gè)目錄中查找.htaccess文件,因此,無(wú)論是否真正用到,啟用.htaccess都會(huì)導(dǎo)致性能的下降。另外,對(duì)每一個(gè)請(qǐng)求,都需要讀取一次.htaccess文件。
還有,Apache必須在所有上級(jí)的目錄中查找.htaccess文件,以使所有有效的指令都起作用(參見(jiàn)指令的生效),所以,如果請(qǐng)求/www/htdocs/example中的頁(yè)面,Apache必須查找以下文件:
/.htaccess /www/.htaccess /www/htdocs/.htaccess /www/htdocs/example/.htaccess
總共要訪問(wèn)4個(gè)額外的文件,即使這些文件都不存在。(注意,這可能僅僅由于允許根目錄"/"使用.htaccess ,雖然這種情況并不多。)
其次是安全。這樣會(huì)允許用戶(hù)自己修改服務(wù)器的配置,這可能會(huì)導(dǎo)致某些意想不到的修改,所以請(qǐng)認(rèn)真考慮是否應(yīng)當(dāng)給予用戶(hù)這樣的特權(quán)。但是,如果給予用戶(hù)較少的特權(quán)而不能滿足其需要,則會(huì)帶來(lái)額外的技術(shù)支持請(qǐng)求,所以,必須明確地告訴用戶(hù)已經(jīng)給予他們的權(quán)限,說(shuō)明AllowOverride設(shè)置的值,并引導(dǎo)他們參閱相應(yīng)的說(shuō)明,以免日后生出許多麻煩。
注意,在/www/htdocs/example目錄下的.htaccess文件中放置指令,與在主配置文件中<Directory /www/htdocs/example>段中放置相同指令,是完全等效的。
/www/htdocs/example目錄下的.htaccess文件: /www/htdocs/example目錄下的.htaccess文件的內(nèi)容:
AddType text/example .exm httpd.conf文件中摘錄的內(nèi)容:
<Directory /www/htdocs/example> AddType text/example .exm </Directory>
但是,把配置放在主配置文件中更加高效,因?yàn)橹恍枰贏pache啟動(dòng)時(shí)讀取一次,而不是在每次文件被請(qǐng)求時(shí)都讀取。
將AllowOverride設(shè)置為none可以完全禁止使用.htaccess文件:
AllowOverride None
虛擬主機(jī)環(huán)境中,因?yàn)楣芾韱T不能讓所有用戶(hù)修改服務(wù)器配置文件,所以通過(guò).htaccess修改配置就是必要的。用戶(hù)經(jīng)常會(huì)用.htaccess文件來(lái)設(shè)置Rewrite 目錄密碼保護(hù) 默認(rèn)頁(yè)面或者是覆蓋服務(wù)器的其他設(shè)置
============================================================================================== Windows下自由創(chuàng)建.htaccess文件的N種方法 .htaccess是apache的訪問(wèn)控制文件,apache中httpd.conf的選項(xiàng)配合此文件,完美實(shí)現(xiàn)了目錄、站點(diǎn)的訪問(wèn)控制,當(dāng)然最多的還是rewrite功能,即URL重寫(xiě),PHP中實(shí)現(xiàn)偽靜態(tài)的一個(gè)重要途徑,也是被公認(rèn)為SEO中搜索引擎友好的極為有效的一個(gè)手段。盡管前些天的黑屏風(fēng)波鬧的沸沸揚(yáng)揚(yáng),但依本人拙見(jiàn),windows用戶(hù)并無(wú)任何減少。現(xiàn)在的一個(gè)實(shí)際問(wèn)題就是windows不允許重命名時(shí).的前面沒(méi)有字符,它認(rèn)為這樣的文件名是不合法的。這就造成我們無(wú)法通過(guò)重命名”新建文本文檔.txt”為”.htaccess”來(lái)創(chuàng)建此訪問(wèn)控制文件,但是,事情總有解決的辦法。且看下面的幾個(gè)方法:
1、使用DOS命令,在DOS下有三種方法可供選擇:
使用屏幕編輯命令copy con .htaccess后回車(chē),輸入內(nèi)容,最后按下ctrl+z結(jié)束編輯,就成功生成了.htaccess;
使用重命名命令ren 1.txt .htaccess ,這是最常規(guī)的方法了,在windows窗口下不能執(zhí)行的命令,在cmd下卻如履平地;
使用重定向命令 echo. >.htaccess,這里將一個(gè)回車(chē)符輸入到.htaccess,同樣能創(chuàng)建成功; 2、用winrar的文件管理器,先新建一文本文檔,然后打開(kāi)winrar主界面,定位到該文件,可以直接重命名,這是我在解壓一國(guó)外開(kāi)源項(xiàng)目時(shí),其自帶的.htaccess居然能正確解壓出來(lái)時(shí),所得到的啟發(fā),當(dāng)然你使用7zip之類(lèi)的管理器也是可以的 3、直接通過(guò)文本編輯工具保存,例如記事本,ultraEdit等等,不過(guò)保存的時(shí)候選擇所有文件就可以了 4、使用php中的文件創(chuàng)建方法,fopen,file_put_contents文件名直接取.htaccess就成。
總結(jié)
以上是生活随笔為你收集整理的Htaccess文件是什么以及Windows下自由创建.htaccess文件的N种方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 火锅店给我出了道奥数题~~大家来算算~~
- 下一篇: 求电影小丑2019百度网盘