wamp WAMP 403 Forbidden禁止訪問

WAMP 403 Forbidden禁止訪問

第一種情況

本機訪問http://localhost沒問題,換臺機器遠程訪問http://192.168.1.x/ 就顯示403錯誤,權限限制。

這個WAMP還真是不錯,缺省安裝是禁止非本地ip訪問。

解決辦法:

在C:\wamp下面找到apache配置文件httpd.conf 

搜索關鍵字 "deny from ",會發現一處 "deny from"下有一行"Allow from 127.0.0.1" ,然後將127.0.0.1修改爲all即可,也就是"Allow from all"即允許任何人訪問,重啓apache 服務就可以允許外網訪問了。

第二種情況

本機無法訪問網站首頁例如local.yueche.cn(首先綁定host)

解決辦法

在C:\wamp下面找到apache配置文件httpd.conf
找到

<Directory />

  AllowOverride All
    OptionsNone
    Orderallow,deny
    Deny from all
</Directory>

將其改爲

<Directory"c:/wamp/apache2/cgi-bin">

  AllowOverride All
    OptionsNone
    Orderallow,deny
    Allow from all
</Directory>

AllowOverride說明:通常利用Apache的rewrite模塊對 URL 進行重寫的時候, rewrite規則會寫在 .htaccess 文件裏。但要使 apache 能夠正常的讀取.htaccess 文件的內容,就必須對.htaccess 所在目錄進行配置。從安全性考慮,根目錄的AllowOverride屬性一般都配置成不允許任何Override,即:

< Directory />
AllowOverride None
< /Directory>

在 AllowOverride 設置爲 None 時, .htaccess 文件將被完全忽略。當此指令設置爲 All 時,所有具有 “.htaccess” 作用域的指令都允許出現在 .htaccess 文件中。

Orderallow,deny後面設置禁止和允許訪問的ip

例:

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

如果要禁止部分內容的訪問,其他的全部開放:
Order Deny,Allow
Deny from ip1 ip2
或者
Order Allow,Deny
Allow from all
Deny from ip1 ip2

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

Order Deny,Allow
Allow from all
Deny from domain.org
錯誤:想禁止來自domain.org的訪問,但是deny不是最後規則,apache在處理到第二句allow的時候就已經匹配成功,根本就不會去看第三句。

解決方法:Order Allow,Deny,後面兩句不動,即可。



發佈了15 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章