web-dev-qa-db-ja.com

エラー403Forbiddenを回避する方法:Apache仮想ホスト構成の問題

私はApacheサーバーの初心者です(2.0、少し古すぎることはわかっていますが、使用しているバージョンであるため、職場で学習する必要があります)。現在、ApacheをJboss(Jboss asアプリケーションサーバー、ApacheがJBossの前に立ち、すべての静的コンテンツを提供します)。

Mod_jkを使用してApacheをJbossで動作させました。ただし、JBossをプッシュして静的コンテンツを提供するのではなく、Apacheが特定のフォルダーから画像を提供するように仮想ホスト構成を追加しようとすると、403Forbiddenエラーが発生します。

私はこの問題の答えや解決策を掘り起こすためにいくつかのフォーラムや他のウェブサイトを調べましたが、残念ながら何もうまくいかないようです! :(

誰かがこれを手伝ってくれませんか?少し説明することは歓迎すべき追加でしょう。

以下は、httpd.confファイルでの私の仮想ホスト定義です。

<VirtualHost *:80>
ServerAdmin admin@localhost
ServerName localhost
DocumentRoot "D:/Dev-Ops/Apache/Apache2/htdocs/jboss/"

<Directory "D:/Dev-Ops/Apache/Apache2/htdocs/jboss/">
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted
</Directory>

#rewrite incoming requests
RewriteEngine On
RewriteCond /SchoolApp%{REQUEST_FILENAME} !-f
RewriteRule ^/(.*)$ http://localhost:8080/SchoolApp/$1 [proxy,last]

</VirtualHost>

あなたの助けは大歓迎です。

PS:私はこれに従っていました リンク 他のいくつかのそのような指示を試した後。

3
user2986175

ついに私はそれを自分で理解しました。 Mod-Jkには、コンテンツのリダイレクトを実行するためのJkMountおよびJkUnMountディレクティブがあります。

<VirtualHost *:80>

    ServerAdmin [email protected]
    DocumentRoot "D:\Dev-Ops\Apache\Apache2\htdocs"
    ServerName localhost.com

    JkMount /SchoolApp/* loadbalancer
    JkMount /SchoolApp loadbalancer
    JkUnMount /SchoolApp/*jpg loadbalancer
    JkUnMount /SchoolApp/*.html loadbalancer

</VirtualHost>

JkMount /SchoolApp/*は、Apacheからのすべてのリクエストをjboss WebアプリケーションSchoolAppにリダイレクトします(ここでは: http://localhost.com:8080/SchoolApp/ );使ってから
JkUnMount /SchoolApp/*jpg loadbalancerjpgファイルのリクエストをjbossにリダイレクトせず、代わりにSchoolApp/を検索します"D:\Dev-Ops\Apache\Apache2\htdocs"の下のフォルダーに画像を提供します。その下には、JbossWebアプリケーションから要求したjpgファイルのディレクトリ構造を模倣した適切なディレクトリ構造があります。

例えば http://localhost.com/SchoolApp/ をリクエストすると、mod-jkはリクエストを http://localhost.com:8080/SchoolApp/ にリダイレクトします。 http://localhost.com/SchoolApp/welcome.jpg をリクエストした場合、このリクエストは http://localhost.com:8080/SchoolApp/welcome)にリダイレクトされません。 .jpg jbossアプリケーションの下にそのようなファイルがある場合でも、代わりにApacheのhtdocs/SchoolApp /フォルダーの下でwelcome.jpgを検索し、welcome.jpgがそこに存在する場合は、そこからファイルを提供します。

これがそれを説明することを願っています。

0
user2986175