web-dev-qa-db-ja.com

Apacheで禁止されているエイリアス403

私は、week7という名前のフォルダーとhello.htmlという名前のhtmlページをドキュメントルート外のそのフォルダーに作成し、Aliasディレクティブで表示しようとしています。

Document Rootから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フォルダーのアクセス許可を変更しようとしましたが、何も変更されませんでした。

何か案は?

23

Apache 2.4を使用している場合

注文許可、拒否
すべてから許可

になる...

すべての付与が必要

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

40
user1585789

私はそれが古いことを知っていますが、記録のためだけに、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>
25
Miro

これらのディレクティブでこの問題を修正しました。

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require local

ローカルコンピューターからのみ参照できますが、ローカルのテストと開発には有効です。

8
David Gassner

上記のガイドをすべて設定した後、機能しません

原因はLinux Mintを使用している

...最後に、「Apache正しいユーザーを起動する」Linuxユーザーの別のケースを見つけました。

読み取り後IfModule unixd_module注

ユーザーとグループをエイリアスディレクトリの所有者またはルートユーザーに変更すると、エラー403がなくなりました。

/opt/lampp/etc/httpd.conf

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

役に立てば幸いです。

3
Lee Tuấn

エイリアス/ data/media/pi/VOLUME

.....

オプションインデックスFollowSymLinks MultiViews

すべてを許可

ローカルが必要

localhostのRaspbianで正常に動作します

0
Jacques Talvard

私にとっては、この解決策を働いた:

仮想ディレクトリにアクセスすると、「アクセスは禁止されています!エラー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>
Solution:デフォルトのApache構成は非常に制限されています。認証なしでディレクトリにアクセスすることはできません。これはhttpd.confのDirectoryセクションで定義されています:<Directory> AllowOverride none Require all denied </Directory>
「require all granted」ディレクティブを仮想ディレクトリセクションに追加すると、アクセスが許可されます。

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>

0