このフォーラムでも、このエラーに関するエントリが少なくとも 12 個見つかりました。すべては基本的に、内部<Directory></Directory>
に「すべて拒否」ディレクティブがあり、「許可」ディレクティブはないと言っています。
バックエンドのTomcatサーバーによってオンザフライで作成されるため、一致する固定ディレクトリを書き込むことができません。
「myUrl/test/request/user1/1234567890/download」と入力すると、
403 Forbidden: /test/request/user1/1234567890/download にアクセスする権限がありません。
httpd エラー ログには次のように表示されます。
[error] [client xxx.xx.xx.xxx] client denied by server configuration: /data/test, referer: myUrl/test/request/user1/1234567890
「test」で始まる部分は、バックエンドの tomcat によって作成されます。「user1」と「1234567890」は異なりますが、ディレクトリ構造の他の部分は固定されたままです。
私のhttpd.confには、次のものがあります。
<VirtualHost *:80>
DocumentRoot /data
---
---
RewriteRule ^/test - [L]
---
</VirtualHost>
これを解決するにはどうすればよいですか?別のものを作成して別のドキュメント ルートを作成したとしても、正規表現が必要になります。外のどこかで、私はこれを試しました:
<Directory "/data/test/request/*/*/download">
Options -Indexes -FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
しかし、成功しません。
「ajp」を使用してバックエンドのTomcatと通信し、必要なモジュールを配置し、バックエンドのTomcatサーバー(8009)にtelnetで接続できます。したがって、ajp 通信の問題ではないはずです。
上記の URL の「テスト」部分は、実際には tomcat の /webapps ディレクトリ内の「コンテキスト」です。その「テスト」コンテキストの所有者は tomcat ですが、全員に読み取り権限を追加しました。