
こんにちは。自分でホストしている 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;
ところ、奇妙な証明書エラーが発生しました。 それらもなくなりました。 それが何らかのキャッシュか何かなのかはわかりません。