當前位置:首頁 » 密碼管理 » apache拒絕訪問

apache拒絕訪問

發布時間: 2025-01-25 21:47:56

『壹』 apache 403 forbidden怎麼解決

在配置linux的 Apache服務時,經常會遇到http403錯誤,我今天配置測試時也出現了,最後解決了,總結了一下。http 403錯誤是拒絕訪問的意思,有很多原因的。還有,這些問題在win平台的Apache里一樣會發生!我按照經驗總結的主要有以下4種原因!

本人測試的環境 是:Scientific Linux 5.3(與RHEL和CentOS百分百兼容!),其它版本的Linux應該通用,沒測試。

1. 訪問的文檔許可權不夠。要755以上許可權。解決方法:用命令chmod 755 /var/www/ 或其他相應目錄。 2. SELinux或防火牆的原因。解決方法:先關閉SELinux和讓防火牆通過WWW服務。 3. 虛擬主機配置錯誤。例如我遇到過一次的: httpd.conf里載入了虛擬主機的配置文件:

代碼如下:

# Virtual hosts Include conf/extra/httpd-vhosts.conf

而conf/extra/httpd-vhosts.conf並沒有配置好,而且虛擬主機功能暫時還沒有用,所以把Include conf/extra/httpd-vhosts.conf注釋掉,重啟apache後正常了。 解決方法:重新配置虛擬主機或暫時關閉。

4. DocumentRoot的設置。解決方法如下:

打開 apache的配置文件httpd.conf,找到這段代碼:

代碼如下:

<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory>

有時候由於配置了php後,這里的「Deny from all」已經拒絕了一切連接。把該行改成「allow from all」,修改後的代碼如下,問題解決。

代碼如下:

<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Allow from all </Directory>

以下是其它網友的補充:

部署apache服務Forbidden 403問題小結

很多朋友和學生都問過我同樣的問題 訪問網站Forbidden 403 什麼原因?一般頁面提示為:

Forbidden You don't have permission to access / on this server.

http錯誤代碼403: 403 Forbidden 資源不可用。伺服器理解客戶的請求,但拒絕處理它。通常由於伺服器上文件或目錄的許可權設置導致。

通常情況可能(但不限於此)的原因有:

原因1:apache配置文件中沒有對站點目錄的許可權許可,這通常是在初始安裝apache後,更改了默認的apache站點目錄時所至(重要,常發生):

如將站點目錄更改為:/var/blog,則在apache配置文件中如果不加下面的配置 就會返回403錯誤。

<Directory "/var/blog"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>

提示:生產環境上面的配置還需修改,見下文,此處僅就本文的主題講解。

原因2:站點目錄下無首頁文件(index文件),而apache的配置又禁止了目錄瀏覽,就會提示403錯誤,配置如下(偶爾發生):

a.站點目錄下無首頁文件(index文件): [root@http-server blog]# pwd /var/blog [root@http-server blog]# ll total 12 drwxr-xr-x 2 root root 4096 Jun 4 22:11 oldboy -rw-r--r-- 1 root root 0 Jun 4 22:11 oldboy.html 提示:上面列出來的就是站點目錄/var/blog目錄下沒有預設 首頁DirectoryIndex index.html

.apache的配置禁止目錄瀏覽的三種配置 第一種配置: <Directory "/var/blog"> Options -Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>

第二種配置: <Directory "/var/blog"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory>

第三種配置: <Directory "/var/blog"> Options None AllowOverride None Order allow,deny Allow from all </Directory>

提示:第二種原因朋友們偶爾會朋友,但遇到問題最多的還是第一種原因。 ======================================================== 以上配置的詳細說明:

原因3:還是Directory許可權問題(不常發生)

如下文:拒絕10.0.0.0/24整段訪問。這樣被拒絕的主機訪問就會出現403錯誤 <Directory "/var/blog"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny #Allow from all Deny from 10.0.0.0/24 <Directory "/var/blog"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny #Allow from all Allow from 10.0.0.116 #Deny from 10.0.0.0/24 </Directory>

原因4:站點目錄許可權問題(不常發生)。

站點目錄需要apache的用戶有訪問許可權,否則就會報403錯誤。 [root@http-server var]# pwd /var [root@http-server var]# chown -R root.root blog/ [root@http-server var]# chmod 700 blog [root@http-server var]# ll -d blog/ drwx------ 3 root root 4096 Jun 4 22:11 blog/

一種可能性是DocumentRoot選項的設置,如果在安裝好apache2後修改了該選項,並且忘記了配置該新目錄的訪問許可權就會出現這樣的情況。

比如apache2安裝好後默認的參數如下:

我們常常會重新指定web文件存放的目錄,比如設定DocumentRoot /var/www這時往往會忽略了對後面的Directory 項的修改,必須將裡面的路徑同時修改為 /var/www才行,否則將會訪問所有目錄都出現 403 forbidden錯誤。

今天在公司電腦上安裝Apache,版本2.2.8,裝完剛測試可以;配置了下php的php.in文件再次localhost打開發現錯誤:HTTP 錯誤 403 - 禁止訪問,即403 Forbidden:You don't have permission to access / on this server.許可權又不夠了? 馬上打開apache的配置文件httpd.conf,逐行檢查。在大約快一半的地方有以下這段代碼:

發現了吧。

由於配置了php後,這里的「Deny from all」已經拒絕了一切連接。把該行改成「allow from all」,修改後的代碼如下,問題解決。

另外一種可能性出現在我們配置了不同的VirtualHost,並且有某個VirtualHost的DocumentRoot不在全局的DocumentRoot目錄下,這時必須在全局種單獨增加對該目錄的Directory 項進行設置,否則該VirtualHost下的所有訪問均會出現403 forbidden錯誤。

這個問題是因為Apache2對於許可權和安全的更高要求,對分布在不同磁碟上的目錄文件進行嚴格管理,我們進行web規劃的時候必須注意這一點。 試試下面的步驟:

終極解決辦法:如果以上都不行的話!!!

Forbidden You don't have permission to access / ~ web on this server. Additionally, a 403 Forbidden error was encountered while trying to use an Error Document to handle the request.

Apache/2.0.54 (CentOS) Server at 127.0.0.1 Port 80

一般出現這個問題,直觀地會想到的目錄的存取許可權問題,查了很久,調了很久也沒有解決問題。

其間曾想到是否Selinux的問題,進去看了一圈,沒有發現什麼要改的地方。(後來的事實證明,有時候直覺是很準的,能否找到答案,區別往往是:是否在直覺上走的更深入)。

問題的解決用Google以Apache 403搜了好一會,終於在一個博客里看到,作者遇到和我完全相同的問題:Apache、目錄的配置都沒問題,但就是不能顯示頁面。

而解決方法恰恰就是修改Selinux對public_html的訪問控制。

用以下命令修改文件夾安全屬性

熱點內容
重疊文件夾 發布:2025-01-27 07:17:51 瀏覽:973
文件怎麼取消隱藏的文件夾 發布:2025-01-27 07:17:35 瀏覽:757
安卓如何使用youtop 發布:2025-01-27 06:58:54 瀏覽:636
如何電腦開機密碼取消密碼 發布:2025-01-27 06:54:43 瀏覽:524
我的世界粘液科技空島伺服器1122 發布:2025-01-27 06:39:59 瀏覽:112
網站搭建伺服器配置 發布:2025-01-27 06:34:48 瀏覽:175
我的世界裡寶可夢伺服器怎麼抓寵物 發布:2025-01-27 06:14:49 瀏覽:87
wikiphp 發布:2025-01-27 06:10:03 瀏覽:205
手機怎麼壓縮gif 發布:2025-01-27 06:01:42 瀏覽:91
linux怎麼返回 發布:2025-01-27 06:00:06 瀏覽:652