Windows系統(tǒng)環(huán)境下安裝Apache并配置虛擬目錄的方法介紹
2024-02-22
更新時間:2024-02-22 00:08:19作者:佚名
Apache,版本2.2.8,安裝完成后,進(jìn)行相關(guān)測試;
配置了下php的php.in文件,再次localhost打開發(fā)現(xiàn)錯誤:
HTTP 錯誤 403 - 禁止訪問,即403 Forbidden:You don't have permission to access / on this server.
可能是權(quán)限不足引起的問題。
解決方法:
打開apache的配置文件httpd.conf,逐行檢查。
找到:
復(fù)制代碼
代碼如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
由于配置了php后,此處“Deny from all”為拒絕一切連接。
把此行修改為 “Allow from all”,即可解決問題。
修改后的代碼為:
復(fù)制代碼
代碼如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
allow from all
</Directory>
瀏覽器里打開http://localhost,顯示it works!問題解決。
總結(jié):
在apache服務(wù)器中,遇到403禁止訪問時,重點關(guān)注下apache的httpd.conf配置文件中,是否有“Deny from all”這樣的代碼。
這個可能是修改了某些配置文件后,重啟apache,被自動更改的。
附,另外一個apache 403錯誤的例子。
apache 403錯誤,顯示信息如下:
您無權(quán)查看該網(wǎng)頁
您可能沒有權(quán)限用您提供的憑據(jù)查看此目錄或網(wǎng)頁
如果您確信能夠查看該目錄或網(wǎng)頁,請嘗試使用 192.168.1.5 主頁上所列的電子郵件地址或電話與網(wǎng)站聯(lián)系。
可以單擊搜索,尋找 Internet 上的信息。
HTTP 錯誤 403 - 禁止訪問
Internet Explorer
去掉顯示友好信息的鉤后顯示Forbidden You don't have permission to access / on this server.
檢查了一遍配置文件httpd.conf,找到這么一段:
復(fù)制代碼
代碼如下:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
deny from all
Satisfy all
</Directory>
然后試著把deny from all中的deny改成了allow,保存后重起了apache,訪問測試網(wǎng)站完全正常了。
APACHE升級到2.2版本之后,提供和支持不少模塊的支持,性能和安全上也有不少改進(jìn)。
以前配置好apache的httpd.conf之后,即可使用。
但現(xiàn)在必須額外對這個文件進(jìn)行其他方面的配置,不然會出現(xiàn) http 403權(quán)限問題錯誤。
解決方法。
以下為httpd.conf文件的其中一段原代碼。
把下面代碼紅色標(biāo)志進(jìn)行更改:
復(fù)制代碼
代碼如下:
<Directory "E:/wamp/www">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# [url]http://httpd.apache.org/docs/2.2/mod/core.html#options[/url]
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride all
#
# Controls who can get stuff from this server.
#
# onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
</Directory>
紅色部分更改為 Allow from all ,也就是所有訪問允許通過。
下面是補充:
關(guān)鍵錯誤:You don't have permission to access / on this server
打開網(wǎng)頁,結(jié)果訪問提示:403錯誤!關(guān)閉了IE的"顯示友好的HTTP錯誤",顯示沒有權(quán)限訪問(You don't have permission to access / on this server)!
403 Forbidden主要原因分析
1你的IP被列入黑名單
2你在一定時間內(nèi)過多地訪問此網(wǎng)站(一般是用采集程序),被防火墻拒絕訪問了
3網(wǎng)站域名解析到了空間,但空間未綁定此域名
4你的網(wǎng)頁腳本文件在當(dāng)前目錄下沒有執(zhí)行權(quán)限
5在不允許寫/創(chuàng)建文件的目錄中執(zhí)行了創(chuàng)建/寫文件操作
6服務(wù)器繁忙,同一IP地址發(fā)送請求過多,遭到服務(wù)器智能屏蔽
END網(wǎng)站出現(xiàn)403 Forbidden解決辦法
用以下命令修改文件夾安全屬性
chcon -R -t httpd_user_content_t public_html/
所用命令解析:
ls -Z -d public_html/
#顯示文件/目錄的安全語境-Z, --context
Display security context so it fits on most displays. Displays only mode, user, group, security context and file name.-d, --directory
list directory entries instead of contents, and do not dereference symbolic links
chcon -R -t httpd_user_content_t public_html/
#修改文件/目錄的安全語境-R, --recursive
change files and directories recursively-t, --type
set type TYPE in the target security context
END其他解決辦法:
重建dns緩存就行
在運行中輸入cmd,然后輸入ipconfig /flushdns即可
或HTTP 錯誤 403 - 限制為僅本地主機(jī)訪問 Internet 服務(wù)管理器 (HTML)
HTTP 錯誤 403 403.1 禁止:禁止執(zhí)行訪問
如果從并不允許執(zhí)行程序的目錄中執(zhí)行 CGI、ISAPI 或其他執(zhí)行程序就可能引起此錯誤。
如果問題依然存在,請與 Web 服務(wù)器的管理員聯(lián)系。
HTTP 錯誤 403 403.2 禁止:禁止讀取訪問
如果沒有可用的默認(rèn)網(wǎng)頁或未啟用此目錄的目錄瀏覽,或者試圖顯示駐留在只標(biāo)記為執(zhí)行或腳本權(quán)限的目錄中的 HTML 頁時就會導(dǎo)致此錯誤。
如果問題依然存在,請與 Web 服務(wù)器的管理員聯(lián)系。
HTTP 錯誤 403 403.3 禁止:禁止寫訪問
如果試圖上載或修改不允許寫訪問的目錄中的文件,就會導(dǎo)致此問題。
如果問題依然存在,請與 Web 服務(wù)器的管理員聯(lián)系。
HTTP 錯誤 403 403.4 禁止:需要 SSL
此錯誤表明試圖訪問的網(wǎng)頁受安全套接字層(SSL)的保護(hù)。要查看,必須在試圖訪問的地址前輸入 https:// 以啟用 SSL。
如果問題依然存在,請與 Web 服務(wù)器的管理員聯(lián)系。
HTTP 錯誤 403 403.5 禁止:需要 SSL 128
此錯誤消息表明您試圖訪問的資源受 128 位的安全套接字層(SSL)保護(hù)。要查看此資源,需要有支持此 SSL 層的瀏覽器。
請確認(rèn)瀏覽器是否支持 128 位 SSL 安全性。如果支持,就與 Web 服務(wù)器的管理員聯(lián)系,并報告問題。403.6 禁止:拒絕 IP 地址
我想著大概是沒有權(quán)限去訪問該目錄,因為一般情況下,NTFS對訪問權(quán)限控制的很嚴(yán)格的!
于是打開目錄,一看,訪問權(quán)限居然是everyone的完全控制!那用戶在文件夾訪問權(quán)限上是絕對沒有問題了!肯定是apache的配置問題了,于是上網(wǎng)搜索,找到如下相關(guān)信息用于修改權(quán)限.
以下為引用的內(nèi)容: <Directory /> Options FollowSymLinks AllowOverride All Order deny,allow Deny from all Satisfy all </Directory> |
根據(jù)配置文件提示,此設(shè)置是用于修改Apache對所有目錄的訪問權(quán)限的,如果任意修改,可能會帶來安全隱患的!那我們來看看到底是什么在作祟,讓我們無法訪問網(wǎng)頁的吧!
Deny from all 有點英文基礎(chǔ)的都可以看的出來,這里是關(guān)鍵:拒絕所有!
將Deny改為Allow試試!(因為可能會存在大小寫敏感的問題,所以推薦用首字母大寫,有興趣的可以自己嘗試小寫!)一下通過了,但是這樣配置的話服務(wù)器安全性會...
于是我繼續(xù)往下看配置文件!
發(fā)現(xiàn)了以下內(nèi)容
#
# This should be changed to whatever you set DocumentRoot to.
#
以上這行注釋的意思:無論你的服務(wù)器根目錄設(shè)置為什么,你都必須保證此處配置保持一致!
以下為引用的內(nèi)容: <Directory "默認(rèn)目錄"> # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.2/mod/core.html#options # for more information. # Options Indexes FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride None # </Directory> |
再將以上的"默認(rèn)目錄"設(shè)置為"目標(biāo)目錄",(當(dāng)然已經(jīng)將對所有權(quán)限訪問的設(shè)置修改為拒絕了!)刷新一下頁面,OK,通過了!