最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Apache配置參數(shù)deny和allow的使用實例

 更新時間:2015年06月01日 13:22:54   投稿:junjie  
這篇文章主要介紹了Apache配置參數(shù)deny和allow的使用實例,需要的朋友可以參考下

由于產(chǎn)品的需要,最近在配置apache的負載均衡功能,但是在配置虛擬主機的訪問權限的時候我們遇到了一些問題。主要問題是deny和allow的執(zhí)行順序,抽時間研究了下這兩個參數(shù)的使用,現(xiàn)把deny和allow的使用情況總結(jié)如下。

一、使用情況總結(jié)

我們來看下下面的apache的一個配置,具體代碼如下:

復制代碼 代碼如下:

<Directory />
    Order allow,deny  #1
    Allow from all #2
    deny from 192.9.200.69 #3
</Directory>

以前使用這兩個參數(shù)的時候比較混亂,具體不太清楚到底是哪個參數(shù)在起作用。通過實驗,我們可以總結(jié)下規(guī)律,具體規(guī)律如下:

1.  規(guī)律

當我們看到一個apache的配置時,可以從下面的角度來理解。一默認,二順序,三重疊。

2.  上面配置說明

[1] 一默認
Order allow,deny ,這句話的作用是配置allow和deny的順序,默認只有最后一個關鍵字起作用,這里起作用的關鍵字就是“deny”,默認拒絕所有請求。為了便于理解,我們可以畫一個圓,圓的背景色涂上黑色,我們給這個圓起個編號,叫圓1。
[2] 二順序
由于上邊的Order指出判斷的順序是先判斷allow的規(guī)則,然后才是deny的規(guī)則。所以我們要先判斷allow的請求,由于該請求中配置的是allow from all,
所以表示該請求允許所有請求。這時我們再畫一個圓,背景色涂上白色,我們給圓起個編號,叫圓2。
我們再來看deny的判斷規(guī)則,由于 deny from 192.9.200.69 ,表示拒絕來自ip地址為“192.9.200.69”,所以我們可以畫出一塊紅色區(qū)域,表示“192.9.200.69”,我們把這塊區(qū)域叫區(qū)域3。
注意:即使把“Allow from all”寫在“deny from 192.9.200.69”下面,依然是需要先判斷allow規(guī)則,也就是說只有Order才能決定allow和order的優(yōu)先順序。

[3] 三重疊

我們把上邊產(chǎn)生的圓1、圓2和區(qū)域3依次從下往上堆疊在一起。每個層都是不透明的,這時我們可以看到最終效果是除了“192.9.200.69”這塊紅色區(qū)域外,其他的所有都是白色區(qū)域。也就是只有“192.9.200.69”這個ip地址沒有權限訪問該目錄,其他的請求都有權限訪問該目錄。

二、看看下面的例子

也許上邊沒有說明白,我們再來看下面的例子,每個配置后面都有簡單的說明,配置文件中的“#”號后邊的數(shù)字表示配置項起作用的先后順序。
1.  只允許192.9.200.69請求訪問目錄

復制代碼 代碼如下:

<Directory />
        Order deny,allow #1.默認允許全部請求
        deny from all #2.按照順序,先判斷deny規(guī)則,拒絕所有請求
       Allow from 192.9.200.69 #3.重疊,允許IP192.9.200.69的請求
</Directory>

2.  允許所有請求訪問目錄
復制代碼 代碼如下:

<Directory />
       Order deny,allow #1.默認允許全部請求
       deny from 192.9.200.69 #2.按照順序,先判斷deny規(guī)則,拒絕192.9.200.69的請求
       Allow from all #3.重疊,允許所有請求
</Directory>

3.  拒絕所有請求訪問目錄
復制代碼 代碼如下:

<Directory />
       Order allow,deny #1.默認拒絕全部請求
       Allow from 192.9.200.69 #2.順序,允許 192.9.200.69請求
       deny from  all#3.重疊,拒絕所有請求
</Directory>

4.  除了192.9.200.69的請求外,其他請求都可以訪問目錄
復制代碼 代碼如下:

<Directory />
      Order allow,deny #1.默認拒絕全部請求
      Allow from all #2.順序,允許所有請求
      deny from  192.9.200.69#3.重疊,拒絕192.9.200.69請求
</Directory>

Allow和Deny可以用于apache的conf文件或者.htaccess文件中(配合Directory, Location, Files等),用來控制目錄和文件的訪問授權。
所以,最常用的是:

復制代碼 代碼如下:

Order Deny,Allow
Allow from All

注意“Deny,Allow”中間只有一個逗號,也只能有一個逗號,有空格都會出錯;單詞的大小寫不限。上面設定的含義是先設定“先檢查禁止設定,沒有禁止的全部允許”,而第二句沒有Deny,也就是沒有禁止訪問的設定,直接就是允許所有訪問了。這個主要是用來確?;蛘吒采w上級目錄的設置,開放所有內(nèi)容的訪問權。

按照上面的解釋,下面的設定是無條件禁止訪問:

復制代碼 代碼如下:

Order Allow,Deny
Deny from All

如果要禁止部分內(nèi)容的訪問,其他的全部開放:

復制代碼 代碼如下:

Order Deny,Allow
Deny from ip1 ip2

或者
復制代碼 代碼如下:

Order Allow,Deny
Allow from all
Deny from ip1 ip2

apache會按照order決定最后使用哪一條規(guī)則,比如上面的第二種方式,雖然第二句allow允許了訪問,但由于在order中allow不是最后規(guī)則,因此還需要看有沒有deny規(guī)則,于是到了第三句,符合ip1和ip2的訪問就被禁止了。注意,order決定的“最后”規(guī)則非常重要,下面是兩個錯誤的例子和改正方式:

復制代碼 代碼如下:

Order Deny,Allow
Allow from all
Deny from domain.org

錯誤:想禁止來自domain.org的訪問,但是deny不是最后規(guī)則,apache在處理到第二句allow的時候就已經(jīng)匹配成功,根本就不會去看第三句。
解決方法:Order Allow,Deny,后面兩句不動,即可。
復制代碼 代碼如下:

Order Allow,Deny
Allow from ip1
Deny from all

錯誤:想只允許來自ip1的訪問,但是,雖然第二句中設定了allow規(guī)則,由于order中deny在后,所以會以第三句deny為準,而第三句的范圍中又明顯包含了ip1(all include ip1),所以所有的訪問都被禁止了。
解決方法一:直接去掉第三句。
解決方法二:
復制代碼 代碼如下:

Order Deny,Allow
Deny from all
Allow from ip1

相關文章

  • linux下查看已經(jīng)安裝的jdk 并卸載jdk的方法(推薦)

    linux下查看已經(jīng)安裝的jdk 并卸載jdk的方法(推薦)

    下面小編就為大家?guī)硪黄猯inux下查看已經(jīng)安裝的jdk 并卸載jdk的方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • 淺談Linux進程間通信方式及優(yōu)缺點

    淺談Linux進程間通信方式及優(yōu)缺點

    這篇文章主要介紹了淺談Linux進程間通信方式及優(yōu)缺點,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • vim的一些常用簡單操作小結(jié)

    vim的一些常用簡單操作小結(jié)

    大家都知道vim在Linux下使用很多,但是習慣了在Windows下的文本操作,在vim中進行文本操作會覺得很不方便,但是vim是一個很強大的工具,只是還不熟練去使用它,下面是一些常用的vim文本操作方法。
    2016-09-09
  • 如何解決Linux下Too many open files問題

    如何解決Linux下Too many open files問題

    Too many open files是Linux系統(tǒng)中常見的錯誤,從字面意思上看就是說程序打開的文件數(shù)過多,不過這里的files不單是文件的意思,也包括打開的通訊鏈接(比如socket),正在監(jiān)聽的端口等等,所以有時候也可以叫做句柄(handle),這個錯誤通常也可以叫做句柄數(shù)超出系統(tǒng)限制。
    2021-06-06
  • linux中設置nexus開機自啟動的方法

    linux中設置nexus開機自啟動的方法

    這篇文章主要介紹了linux中設置nexus開機自啟動的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02
  • BT5不能使用apt-get命令的解決方案

    BT5不能使用apt-get命令的解決方案

    本篇文章給大家詳細分析了BT5不能使用apt-get命令的解決方法,對此有需求的朋友可以參考下。
    2018-02-02
  • Linux內(nèi)核設備驅(qū)動之內(nèi)核的時間管理筆記整理

    Linux內(nèi)核設備驅(qū)動之內(nèi)核的時間管理筆記整理

    今天小編就為大家分享一篇關于Linux內(nèi)核設備驅(qū)動之內(nèi)核的時間管理筆記整理,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • Linux通過匿名管道進行進程間通信

    Linux通過匿名管道進行進程間通信

    這篇文章主要介紹了Linux通過匿名管道進行進程間通信,介紹了什么是管道,popen函數(shù),pipe調(diào)用等相關內(nèi)容,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 詳解linux 定時任務 crontabs 安裝及使用方法

    詳解linux 定時任務 crontabs 安裝及使用方法

    這篇文章主要介紹了linux 定時任務 crontabs 安裝及使用方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • 詳解在Linux系統(tǒng)中如何識別和解決端口占用問題

    詳解在Linux系統(tǒng)中如何識別和解決端口占用問題

    在日常的 Linux 系統(tǒng)管理和開發(fā)過程中,端口占用是一個常見且令人頭疼的問題,無論是部署新服務、調(diào)試應用程序,還是進行系統(tǒng)維護,遇到端口被占用都可能導致服務無法正常啟動或運行,本文將詳細介紹在 Linux 系統(tǒng)中如何識別和解決端口占用問題,需要的朋友可以參考下
    2025-01-01

最新評論

平塘县| 永定县| 海兴县| 武汉市| 八宿县| 化德县| 屏边| 唐海县| 灯塔市| 阿城市| 凤庆县| 长顺县| 新乡市| 湘阴县| 沂水县| 辽宁省| 山西省| 乌鲁木齐市| 丽江市| 荔波县| 祁阳县| 鄂尔多斯市| 三门峡市| 天台县| 彭山县| 兴化市| 昌都县| 阿克| 安龙县| 荥阳市| 乐亭县| 天台县| 新安县| 茂名市| 凉山| 七台河市| 郁南县| 蓝山县| 来凤县| 博乐市| 胶南市|