




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——深入理解PHP的htaccess文件深入理解PHP的.htaccess文件
導(dǎo)語(yǔ):PHP是一種通用開(kāi)源腳本語(yǔ)言。語(yǔ)法吸收了C語(yǔ)言、Java和Perl的特點(diǎn),利于學(xué)習(xí),使用廣泛,主要適用于Web開(kāi)發(fā)領(lǐng)域。下面我們來(lái)深入理解PHP的.htaccess文件,夢(mèng)想對(duì)大家有所扶助。
工作原理和使用方法
.htaccess文件分布式配置文件供給了針對(duì)每個(gè)目次變更配置的方法,即在一個(gè)特定的目次中放置一個(gè)包含指令的文件,其中的指令作用于此目次及其全體子目次。
假設(shè)需要使用.htaccess以外的其他文件名,可以用AccessFileName指令來(lái)變更。例如,需要使用.config,那么可以在服務(wù)器配置文件中按以下方法配置:AccessFileName.config
通常,.htaccess文件使用的配置語(yǔ)法和主配置文件一樣。AllowOverride指令按類(lèi)別抉擇了.htaccess文件中哪些指令才是有效的。假設(shè)一個(gè)指令允許在.htaccess中使用,那么在本手冊(cè)的說(shuō)明中,此指令會(huì)有一個(gè)籠罩項(xiàng)段,其中說(shuō)領(lǐng)略為使此指令生效而務(wù)必在AllowOverride指令中設(shè)置的值。
使用.htaccess文件的場(chǎng)合
一般處境下,不理應(yīng)使用.htaccess文件,除非你對(duì)主配置文件沒(méi)有訪問(wèn)權(quán)限。有一種很常見(jiàn)的曲解,認(rèn)為用戶認(rèn)證只能通過(guò).htaccess文件實(shí)現(xiàn),其實(shí)并不是這樣,把用戶認(rèn)證寫(xiě)在主配置文件中是完全可行的,而且是一種很好的方法。
.htaccess文件理應(yīng)被用在內(nèi)容供給者需要針對(duì)特定目次變更服務(wù)器的配置而又沒(méi)有root權(quán)限的處境下。假設(shè)服務(wù)器管理員不容許頻繁修改配置,那么可以允許用戶通過(guò).htaccess文件自己修改配置,尤其是ISP在同一個(gè)機(jī)器上運(yùn)行了多個(gè)用戶站點(diǎn),而又夢(mèng)想用戶可以自己變更配置的處境下。
雖然如此,一般都理應(yīng)盡可能地制止使用.htaccess文件。任何夢(mèng)想放在.htaccess文件中的配置,都可以放在主配置文件的段中,而且更高效。
制止使用.htaccess文件有兩個(gè)主要理由。
首先是性能。假設(shè)AllowOverride啟用了.htaccess文件,那么Apache需要在每個(gè)目次中查找.htaccess文件,因此,無(wú)論是否真正用到,啟用.htaccess都會(huì)導(dǎo)致性能的下降。另外,對(duì)每一個(gè)苦求,都需要讀取一次.htaccess文件。
還有,Apache務(wù)必在全體上級(jí)的目次中查找.htaccess文件,以使全體有效的指令都起作用參見(jiàn)指令的生效,所以,假設(shè)苦求//htdocs/example中的頁(yè)面,Apache務(wù)必查找以下文件:
/.htaccess
//.htaccess
//htdocs/.htaccess
//htdocs/example/.htaccess
總共要訪問(wèn)4個(gè)額外的文件,即使這些文件都不存在。留神,這可能僅僅由于允許根目次/使用.htaccess,雖然這種處境并不多。
其次是安好。這樣會(huì)允許用戶自己修改服務(wù)器的配置,這可能會(huì)導(dǎo)致某些意想不到的修改,所以請(qǐng)專(zhuān)心考慮是否應(yīng)當(dāng)賦予用戶這樣的特權(quán)。但是,假設(shè)賦予用戶較少的特權(quán)而不能得志其需要,那么會(huì)帶來(lái)額外的技術(shù)支持苦求,所以,務(wù)必明確地報(bào)告用戶已經(jīng)賦予他們的權(quán)限,說(shuō)明AllowOverride設(shè)置的值,并引導(dǎo)他們參閱相應(yīng)的說(shuō)明,以免日后生出大量麻煩。
留神,在//htdocs/example目次下的.htaccess文件中放置指令,與在主配置文件中段中放置一致指令,是完全等效的。
把配置放在主配置文件中更加高效,由于只需要在Apache啟動(dòng)時(shí)讀取一次,而不是在每次文件被苦求時(shí)都讀取。
指令的生效
.htaccess文件中的配置指令作用于.htaccess文件所在的目次及其全體子目次,但是很重要的、需要留神的是,其上級(jí)目次也可能會(huì)有.htaccess文件,而指令是按查找依次依次生效的,所以一個(gè)特定目次下的.htaccess文件中的指令可能會(huì)籠罩其上級(jí)目次中的.htaccess文件中的指令,即子目次中的指令會(huì)籠罩父目次或者主配置文件中的指令。
例子://htdocs/example1目次中的.htaccess文件有如下內(nèi)容:Options+ExecCGI
留神:務(wù)必設(shè)置AllowOverrideOptions以允許在.htaccess中使用Options指令
//htdocs/example1/example2目次中的.htaccess文件有如下內(nèi)容:OptionsIncludes
由于其次個(gè).htaccess文件的存在,//htdocs/example1/example2中的CGI執(zhí)行是不允許的,而只允許OptionsIncludes,它完全籠罩了之前的設(shè)置。
將.htaccess合并到主配置文件中
正如在配置段容器中議論的那樣,.htaccess文件能夠籠罩段中對(duì)相應(yīng)目次的設(shè)置,但是也同樣會(huì)被主配置文件中其它類(lèi)型的配置段所籠罩。這個(gè)特性可以用來(lái)強(qiáng)制實(shí)施某些配置,甚至在AllowOverride已經(jīng)許可的處境下。舉個(gè)例子來(lái)說(shuō),為了強(qiáng)迫在.htaccess中遏止腳本執(zhí)行但不限制其它的`處境下,可以這樣:
AllowoverrideAll
Options+IncludesNoExec-ExecCGI
認(rèn)證舉例
假設(shè)你只是為了知道如何認(rèn)證,而直接從這里開(kāi)頭看的,有很重要的一點(diǎn)需要留神,有一種常見(jiàn)的曲解,認(rèn)為實(shí)現(xiàn)密碼認(rèn)證務(wù)必要使用.htaccess文件,其實(shí)是不正確的。把認(rèn)證指令放在主配置文件的段中是一個(gè)更好的方法,而.htaccess文件理應(yīng)僅僅用于無(wú)權(quán)訪問(wèn)主配置文件的時(shí)候。參見(jiàn)上述關(guān)于何時(shí)理應(yīng)與何時(shí)不理應(yīng)使用.htaccess文件的議論。
有此聲明在先,假設(shè)你依舊需要使用.htaccess文件,請(qǐng)持續(xù)看以下說(shuō)明。.htaccess文件的內(nèi)容:
12345務(wù)必設(shè)置AllowOverrideAuthConfig以允許這些指令生效。
服務(wù)器端包含SSI舉例
.htaccess文件的另一個(gè)常見(jiàn)用途是允許一個(gè)特定的目次使用服務(wù)器端包含SSI,可以在需要的目次中放置.htaccess文件,并作如下配置:
Options+Includes
AddTypetext/htmlshtml
AddHandlerserver-parsedshtml
留神,務(wù)必同時(shí)設(shè)置AllowOverrideOptions和AllowOverrideFileInfo以使這些指令生效。
CGI舉例
可以通過(guò).htaccess文件允許在特定的目次中執(zhí)行CGI程序,需要作如下配置:
Options+ExecCGI
AddHandlercgi-scriptcgipl
另外,如下配置可以使給定目次下的全體文件被視為CGI程序:
Options+ExecCGI
SetHandlercgi-script
留神,務(wù)必同時(shí)設(shè)置AllowOverrideOptions和AllowOverrideFileInfo以使這些指令生效。
疑難解答
假設(shè)在.htaccess文件中的某些指令不起作用,可能有多種理由。
最常見(jiàn)的理由是AllowOverride指令沒(méi)有被正確設(shè)置,務(wù)必確保沒(méi)有對(duì)此文件區(qū)域設(shè)置AllowOverrideNone。有一個(gè)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度高校實(shí)習(xí)教師試用期聘用協(xié)議書(shū)
- 2025年度智能設(shè)備研發(fā)項(xiàng)目融資合同
- 業(yè)務(wù)代理記賬合同范本
- 二零二五年度男方婚前財(cái)產(chǎn)增值及保值管理協(xié)議
- 二零二五年度互聯(lián)網(wǎng)經(jīng)營(yíng)貸采購(gòu)合同
- 二零二五年度員工分紅股股權(quán)激勵(lì)與員工股權(quán)激勵(lì)退出協(xié)議
- 2025年度焊接加工行業(yè)標(biāo)準(zhǔn)制定合同范文
- 2025至2031年中國(guó)電影銀幕架行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年中國(guó)螃女工藝品數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 污水處置勞務(wù)合同范本
- 圖形的平移與旋轉(zhuǎn)壓軸題(7個(gè)類(lèi)型55題)-【???jí)狠S題】2023-2024學(xué)年八年級(jí)數(shù)學(xué)下冊(cè)壓軸題攻略(解析版)
- TDALN 033-2024 學(xué)生飲用奶安全規(guī)范入校管理標(biāo)準(zhǔn)
- 2024至2030年全球及中國(guó)標(biāo)準(zhǔn)履帶挖掘機(jī)行業(yè)研究及十四五規(guī)劃分析報(bào)告
- 各地分布式光伏項(xiàng)目電價(jià)對(duì)比
- 2024年綠化工職業(yè)技能理論知識(shí)考試題庫(kù)(含答案)
- 醫(yī)學(xué)檢驗(yàn)技術(shù)專(zhuān)業(yè)《血液學(xué)檢驗(yàn)》課程標(biāo)準(zhǔn)
- 2024年江蘇食品藥品職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)有完整答案
- 員工服務(wù)意識(shí)提升提高服務(wù)意識(shí)培訓(xùn)課件
- 2024年黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)1套
- 學(xué)前兒童游戲智慧樹(shù)知到期末考試答案章節(jié)答案2024年麗水學(xué)院
- 2023-2024學(xué)年高中政治統(tǒng)編版必修三第四課 人民民主專(zhuān)政的社會(huì)主義國(guó)家 同步練習(xí)
評(píng)論
0/150
提交評(píng)論