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>
< 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,AllowAllow from all
Deny from domain.org
錯誤:想禁止來自domain.org的訪問,但是deny不是最後規則,apache在處理到第二句allow的時候就已經匹配成功,根本就不會去看第三句。
解決方法:Order Allow,Deny,後面兩句不動,即可。