NGINX リバース プロキシは Opera GX を除くすべてのブラウザーで動作します - 問題の原因は何ですか?

NGINX リバース プロキシは Opera GX を除くすべてのブラウザーで動作します - 問題の原因は何ですか?

こんにちは。自分でホストしている Web サイトを閲覧するときに奇妙な問題が発生します。

Edge/Chrome/Firefox/Chromium で VPS ドメイン (ホームプロキシ (nginx) にプロキシしてからホーム Web サーバー 1 にプロキシする) を参照すると、期待どおりに動作します。Opera GX で同じ操作を行うと、URL が https://internal_web.domain/ に書き換えられますが、内部で使用するドメインがネットワーク外に存在しないため、DNS エラーが発生します。内部 Web サーバーでは、Kanboard をホストしています。hello world を含む index.html を提供するだけでも同じことが起こります。

3 台のサーバーはすべて次のとおりです: Ubuntu 22.04 nginx バージョン: nginx/1.18.0 (Ubuntu)

内部ドメインについては、すべてのマシンに /etc/hosts エントリがあり、すべて正しく解決されます。

Opera GX では、トラッカーと広告ブロックのみをオンにし、VPN をオフにしています。DNS は 8.8.8.8、セカンダリは 8.8.4.4 に設定されています。

Opera GX バージョン: LVL4 (コア: 98.0.4759.82) アップデート ストリーム: 早期アクセス オペレーティング システム: Windows 11 64 ビット Chromium バージョン: 112.0.5615.165

Configs 内のすべての IP / ドメインをマスクしました。

VPS -> homeproxy(nginx) -> home.webserver1(nginx)

VPS 設定 /etc/nginx/sites-enabled/webapp:

server {
        listen 80;
        server_name vps.myserver.domain;
        return 301 https://$host$request_uri;

        access_log /var/log/nginx/vps.myserver.domain.access.log;
        error_log /var/log/nginx/vps.myserver.domain.error.log;
}

server {
        listen                  443 ssl http2;
        server_name             vps.myserver.domain;
        ssl_certificate         /etc/nginx/ssl/vps.myserver.domain.pem;
        ssl_certificate_key     /etc/nginx/ssl/vps.myserver.domain.key;
        ssl_protocols           TLSv1.3;

        access_log /var/log/nginx/vps.myserver.domain.access.log;
        error_log /var/log/nginx/vps.myserver.domain.error.log;

        location / {
                proxy_pass http://homewebapp.myserver.domain;
        }
}

ホームプロキシ(nginx) /etc/nginx/sites-enabled/webapp:

server {
        listen 80;
        server_name homewebapp.myserver.domain;
        location / {
                proxy_pass http://internal_webapp.domain;
        }

        access_log /var/log/nginx/homewebapp.myserver.domain.access.log;
        error_log /var/log/nginx/homewebapp.myserver.domain.error.log;

}

home.webserver1(nginx) /etc/nginx/sites-enabled/webapp:

server {
        listen 80 default_server;
        root /var/www/html/webapp/;
        index index.html index.htm index.nginx-debian.html;
        server_name internal_webapp.domain;
        index index.php;
        location / {
                try_files $uri $uri/ /index.php$is_args$args;
        }
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_index index.php;
                include fastcgi_params;
        }
        # Deny access to the directory data
        location ~* /data {
                deny all;
                return 404;
        }
        # Deny access to .htaccess
        location ~ /\.ht {
                deny all;
                return 404;
        }
}

NGINX 設定の残りの部分はデフォルトです。

また、実際の IP などを取得するために、構成内の proxy_set_header も試してみましたが、Opera GX がそのように動作する理由がわかりません。少し Google で検索してみましたが、それについては何も見つかりませんでした。2017 年の古いスレッドで、Opera GX がすべてのサイトで突然停止したという内容が見つかりましたが、この場合、他のすべては機能しますが、私の Web サイトは機能しません。

Opera GX でも、アドオンが有効になっていない、または Adblock / Tracker Blocker が有効になっていない新しいプロファイルで試しました。

私の質問は次のとおりです:

これは私の NGINX の設定ミスでしょうか、それとも Opera GX がおかしいだけでしょうか? NGINX が原因の場合、この問題をどのように解決すればよいでしょうか? Opera GX が原因の場合、どこかのバグ トラッカーで問題を報告すればよいのでしょうか?

答え1

デフォルトのブラウザを切り替えてからしばらく経つと、今は動作するようになりました...理由はわかりません。Safari もテストしましたが、いくつかのモバイル ブラウザはすべて完璧に動作しました。Opera GX がここで何が違うのかはわかりません。バグ レポートを書いていたところ、突然動作するようになりました。

default_serverまた、の後に別の構成を追加したlisten $PORT;ところ、奇妙な証明書エラーが発生しました。 それらもなくなりました。 それが何らかのキャッシュか何かなのかはわかりません。

関連情報