Ubuntu 16.04/Apache 2.4.18: 403 禁止

Ubuntu 16.04/Apache 2.4.18: 403 禁止

ホームサーバーに Minecraft Technic Solder リポジトリを設定しようとしています。

以下は /etc/apache2/sites-available/ にある 000-default.conf です:

<VirtualHost *:80>
# Host that will server this project.
ServerName 192.168.1.19
ServerAdmin *email*

# The location of public directory.
DocumentRoot /home/evilarceus/TechnicSolder/public/

# Important options for solder public directory
<Directory /home/evilarceus/TechnicSolder/public/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

<Directory "/home/evilarceus/TechnicSolder/public/repo/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    Require all granted
</Directory>

# Useful logs for debug.
ErrorLog /home/evilarceus/TechnicSolder/logs/error.log
CustomLog /home/evilarceus/TechnicSolder/logs/access.log combined

最初のディレクトリ (home/evilarceceus/TechnicSolder/public) は完全に正常に動作します。ただし、2 番目のディレクトリ (リポジトリを配置する場所) には 403 Forbidden が表示されます。

repo/ の権限:

drwxrwxr-x 3 evilarceus evilarceus 4096 Oct  2 19:39 repo

エラーログ:

[Sun Oct 02 20:39:31.034401 2016] [access_compat:error] [pid 17874] [client 192.168.1.20:50072] AH01797: client denied by server configuration: /home/evilarceus/TechnicSolder/public/repo

正直に言って、この時点で何をすべきか分かりません。助けていただければ幸いです。

答え1

ディレクトリのAllow from all後に行を追加します。Order allow,deny/home/evilarceus/TechnicSolder/public/repo/

答え2

これはとてもv2.4 認証ディレクティブと v2.2 認証ディレクティブの両方を持つ Apache 構成ファイルを使用する場合の一般的な問題。

古いディレクティブをすべて見つけて、オプション ブロックを含むAllow, Order, Satisfy and RequireApache v2.4 に変更し、mod_access_compat の読み込みをコメント アウトします。そうしないと、予期しない問題が引き続き発生し、ほとんどの場合、次のような結果になります。Require<Require(Any|All|None)>client denied by server configuration

設定がクリーンになったら、残っているエラーを追加します。

関連情報