瘋狂

          STANDING ON THE SHOULDERS OF GIANTS
          posts - 481, comments - 486, trackbacks - 0, articles - 1
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          日歷

          <2011年10月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          公告

          公眾號(hào):
          QQjava交流群:51374316



          相冊(cè)

          搜索

          •  

          積分與排名

          • 積分 - 2844366
          • 排名 - 2

          最新隨筆

          最新評(píng)論

          Allow和Deny可以用于apache的conf文件或者.htaccess文件中(配合Directory, Location, Files等),用來(lái)控制目錄和文件的訪問(wèn)授權(quán)。

          所以,最常用的是:
          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é)果表示全部都拒絕!

          form:http://hi.baidu.com/enjoypain/blog/item/f48c7aecdba298d12f2e21ac.html

          前段時(shí)間做了個(gè)Apache的HTTP代理服務(wù)器,其中的order allow,deny這部分弄的不太懂,于是上網(wǎng)找資料看,誰(shuí)知道越看越糊涂,其中有些難以分辨對(duì)錯(cuò)甚至是誤導(dǎo)。就像破解windows系統(tǒng)密碼的一些文章那樣,很多都是人云亦云的,并沒(méi)有經(jīng)過(guò)測(cè)試。廢話少說(shuō),先把我經(jīng)過(guò)測(cè)試后分析總結(jié)出來(lái)的結(jié)論show出來(lái),相信這對(duì)大家的理解非常有幫助。
          轉(zhuǎn)自:http://hi.baidu.com/amenmen/blog/item/3145921fdf498f11314e154b.html

          主站蜘蛛池模板: 遂川县| 雷州市| 邵武市| 镇巴县| 桃江县| 邯郸市| 蓬莱市| 克拉玛依市| 韶关市| 大关县| 玉门市| 新绛县| 荣昌县| 平安县| 交口县| 柳林县| 寿阳县| 甘德县| 黄骅市| 东辽县| 吴桥县| 若尔盖县| 旬阳县| 新丰县| 六安市| 绥芬河市| 涿州市| 贡觉县| 全南县| 察隅县| 界首市| 开阳县| 乌拉特后旗| 南投市| 武陟县| 达日县| 新源县| 宁安市| 安乡县| 仪陇县| 三亚市|