
ホームサーバーに 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 Require
Apache v2.4 に変更し、mod_access_compat の読み込みをコメント アウトします。そうしないと、予期しない問題が引き続き発生し、ほとんどの場合、次のような結果になります。Require
<Require(Any|All|None)>
client denied by server configuration
設定がクリーンになったら、残っているエラーを追加します。