アップデート:

アップデート:

私はウェブサイトをホストしているApacheを持っています。000-デフォルト.confのためにドメイン1
もう一つはドメイン2.confのためにドメイン2 そして、このような構成になっています

<VirtualHost *:80>

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    ServerName activity.domain2.com
    ProxyPass / http://activity.domain2.com:8000
    ProxyPassReverse / http://activity.domain2.com:8000
</VirtualHost>

ドメイン2指しているhttp://activity.domain2.com:8000Nginxによって提供された

Nginxの場合、サーバーは次のように設定されます

server {
    listen 8000;
    server_name activity.domain2.com;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /root/domain2;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }

すべて順調ですドメイン1
ただし、ロードするとドメイン2htmlファイルのみが提供されますが、静的ファイルのリクエストはコードでエラーになります502 プロキシ エラー

これをどうすれば修正できますか?

アップデート:

問題を解決するために、Apache の前に nginx を使用することにしました。しかし、可能であれば答えを知りたいです。

答え1

まず、末尾のスラッシュが抜けているようです

ProxyPass / http://activity.domain2.com:8000
                                            ^
                           add a "/" here _/

からマニュアル:

最初の引数が末尾の で終わる場合/、2 番目の引数も末尾の で終わる必要があります/。その逆も同様です。そうしないと、バックエンドへのリクエストで必要なスラッシュが欠落し、期待どおりの結果が得られない可能性があります。

次に、プロキシ エラーは通常 (エラー) ログに記録され、ほとんどのエラーと同様に、ログ エントリには通常、サイト訪問者に返される情報よりも役立つデバッグ情報が付随します。まず Apache ログを確認しますが、nginx バックエンド サーバーのログも忘れずに確認してください。

関連情報