簡體   English   中英

別名 403 禁止使用 Apache

[英]Alias 403 Forbidden with Apache

我正在嘗試在文檔根目錄外的該文件夾中創建一個名為 week7 的文件夾和一個名為 hello.html 的 html 頁面,並通過 Alias 指令查看它。

我在文檔根目錄中創建了一個名為 week7 的文件夾。 我為此選擇了這個位置:

/usr/local/www/week7

而我的文檔根目錄是:

/usr/local/www/apache22/data

在 httpd.conf 和標簽下,我寫道:

    Alias /week7 /usr/local/www/week7
<Directory /usr/local/www/week7>
    Require all granted
</Directory>

重新啟動服務器后,我收到以下消息:Forbidden 403 message。

我嘗試更改 hello.html 文件、week7 文件夾甚至 www 文件夾的權限,但沒有任何改變。

有任何想法嗎?

如果您使用的是 apache 2.4

訂單允許、拒絕
允許所有

變成...

要求全部授予

https://httpd.apache.org/docs/2.4/upgrading.html

我知道它很舊但只是為了記錄,以下在 XAMPP (Windows 8) 中對我有用

Alias /projects c:/projects

<Directory c:/projects>
    Options Indexes FollowSymLinks MultiViews
    Order allow,deny
    Allow from all
</Directory>

編輯

在 XAMPP 5.6 和 Apache 2.4 上試試這個:

Alias /projects c:/projects

<Directory c:/projects >
    Options Indexes FollowSymLinks MultiViews
    Require all granted
</Directory>

我用這些指令解決了這個問題:

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require local

您只能從本地計算機瀏覽,但它適用於本地測試和開發。

在這里嘗試其他答案提供的解決方案,發現它們對我不起作用,使用Linux Mint ,我找到了另一種以不同用戶身份啟動 apache 的選項。

閱讀unixd_module 文檔后,我編輯了“httpd.conf”以將UserGroup更改為Alias目錄所有者(或 root 用戶)的用戶和組,並且 403“Forbidden”錯誤消失了。

  1. 在文本編輯器中打開位於/opt/lampp/etc/httpd.conf的“httpd.conf”(例如在 XAMPP 的默認安裝中)。

  2. 找到<IfModule unixd_module> ,其中的注釋應該是這樣的:

    如果您希望 httpd 以不同的用戶或組運行,您必須首先以 root 身份運行 httpd,然后它會切換。

    用戶/組:運行 httpd 的用戶/組的名稱(或#number)。

    與大多數系統服務一樣,創建專門的用戶和組來運行 httpd 通常是一種很好的做法。

    默認UserGroup設置為daemon

  3. 編輯UserGroup

例如:

<IfModule unixd_module>
  User mrJohn
  Group mrJohn
</IfModule>

我希望這是有用的。

對我來說,這個解決方案是:

當我訪問虛擬目錄時出現錯誤“禁止訪問。 發生錯誤 403”。
配置似乎沒問題:

Alias /static/ /home/username/sites/myblog/static/
<Directory /home/username/sites/myblog/static> Options Indexes FollowSymLinks MultiViews ExecCGI AllowOverride All Order allow,deny Allow from all </Directory>
解決方案:默認的 apache 配置非常嚴格。 它不允許未經身份驗證訪問目錄。 這是在 httpd.conf 的目錄部分中定義的: <Directory> AllowOverride none Require all denied </Directory>
將“要求全部授予”指令添加到您的虛擬目錄部分將授予訪問權限。

Alias /static/ /home/username/sites/myblog/static/ <Directory /home/username/sites/myblog/static> AllowOverride All Order allow,deny Allow from all Require all granted </Directory>

別名 /data /media/pi/VOLUME

.....

期權索引 FollowSymLinks MultiViews

允許覆蓋所有

需要本地

在本地主機的 Raspbian 上運行良好

我能夠訪問文檔根目錄之外的目錄,但是使用了原始問題中建議的方法到這個線程。

   # Create Alias to access files for pure js front end app
   Alias "/hbt" "/dirA/dirB/dirC"

   # Create a Directory directive for "dirC"
   <Directory /dirA/dirB/dirC>
     Require all granted
   </Directory

重新啟動 Apache,它工作了。 我正在使用 Apache 2.4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM