所以,最常用的是:
Order Deny,Allow
Allow from All
注意“Deny,Allow”中間只有一個(gè)逗號(hào),也只能有一個(gè)逗號(hào),有空格都會(huì)出錯(cuò);單詞的大小寫(xiě)不限。上面設(shè)定的含義是先設(shè)定“先檢查禁止設(shè)定,沒(méi)有禁止的全部允許”,而第二句沒(méi)有Deny,也就是沒(méi)有禁止訪問(wèn)的設(shè)定,直接就是允許所有訪問(wèn)了。這個(gè)主要是用來(lái)確保或者覆蓋上級(jí)目錄的設(shè)置,開(kāi)放所有內(nèi)容的訪問(wèn)權(quán)。
按照上面的解釋,下面的設(shè)定是無(wú)條件禁止訪問(wèn):
Order Allow,Deny
Deny from All
如果要禁止部分內(nèi)容的訪問(wèn),其他的全部開(kāi)放:
Order Deny,Allow
Deny from ip1 ip2
或者
Order Allow,Deny
Allow from all
Deny from ip1 ip2
apache會(huì)按照order決定最后使用哪一條規(guī)則,比如上面的第二種方式,雖然第二句allow允許了訪問(wèn),但由于在order中allow不是最后規(guī)則,因此還需要看有沒(méi)有deny規(guī)則,于是到了第三句,符合ip1和ip2的訪問(wèn)就被禁止了。注意,order決定的“最后”規(guī)則非常重要,下面是兩個(gè)錯(cuò)誤的例子和改正方式:
Order Deny,Allow
Allow from all
Deny from domain.org
錯(cuò)誤:想禁止來(lái)自domain.org的訪問(wèn),但是deny不是最后規(guī)則,apache在處理到第二句allow的時(shí)候就已經(jīng)匹配成功,根本就不會(huì)去看第三句。
解決方法:Order Allow,Deny,后面兩句不動(dòng),即可。
Order Allow,Deny
Allow from ip1
Deny from all
錯(cuò)誤:想只允許來(lái)自ip1的訪問(wèn),但是,雖然第二句中設(shè)定了allow規(guī)則,由于order中deny在后,所以會(huì)以第三句deny為準(zhǔn),而第三句的范圍中又明顯包含了ip1(all include ip1),所以所有的訪問(wèn)都被禁止了。
解決方法一:直接去掉第三句。
解決方法二:
Order Deny,Allow
Deny from all
Allow from ip1
下面是測(cè)試過(guò)的例子:
--------------------------------
Order deny,allow
allow from all
deny from 219.204.253.8
#全部都可以通行
-------------------------------
Order deny,allow
deny from 219.204.253.8
allow from all
#全部都可以通行
-------------------------------
Order allow,deny
deny from 219.204.253.8
allow from all
#只有219.204.253.8不能通行
-------------------------------
Order allow,deny
allow from all
deny from 219.204.253.8
#只有219.204.253.8不能通行
-------------------------------
-------------------------------
Order allow,deny
deny from all
allow from 219.204.253.8
#全部都不能通行
-------------------------------
Order allow,deny
allow from 219.204.253.8
deny from all
#全部都不能通行
-------------------------------
Order deny,allow
allow from 219.204.253.8
deny from all
#只允許219.204.253.8通行
-------------------------------
Order deny,allow
deny from all
allow from 219.204.253.8
#只允許219.204.253.8通行
-------------------------------
--------------------------------
Order deny,allow
#全部都可以通行(默認(rèn)的)
-------------------------------
Order allow,deny
#全部都不能通行(默認(rèn)的)
-------------------------------
Order allow,deny
deny from all
#全部都不能通行
-------------------------------
Order deny,allow
deny from all
#全部都不能通行
-------------------------------
對(duì)于上面兩種情況,如果換成allow from all,則全部都可以通行!
-------------------------------
Order deny,allow
deny from 219.204.253.8
#只有219.204.253.8不能通行
-------------------------------
Order allow,deny
deny from 219.204.253.8
#全部都不能通行
-------------------------------
Order allow,deny
allow from 219.204.253.8
#只允許219.204.253.8通行
-------------------------------
Order deny,allow
allow from 219.204.253.8
#全部都可以通行
-------------------------------
-------------------------------
order deny,allow
allow from 218.20.253.2
deny from 218.20
#代表拒絕218.20開(kāi)頭的IP,但允許218.20.253.2通過(guò);而其它非218.20開(kāi)頭的IP也都允許通過(guò)。
-------------------------------
order allow,deny
allow from 218.20.253.2
deny from 218.20
#和上面的差不多,只是掉換的order語(yǔ)句中的allow、deny先后順序,但最終結(jié)果表示全部都拒絕!