4

このサイトと同様のサイトでいくつかの部分的な回答を見つけましたが、それらをまとめる方法がわかりませんでした。または、おそらく答えがそこにあり、それを認識できません:-/

私が達成しようとしていること:

次のように、LANでhttpサービスを実行しています(dnsmasqを適切にセットアップしました):

http://subdomain1.domain.com:1234/

そして、それをインターネットとして公開したいと思います(外部DNSも正常に機能しています):

https://subdomain2.domain.com:443/

ユーザー認証はnginxによって処理されます。

また、URL を変更せずにブラウザに表示したままにしておく必要があります。

同様の質問から見つけたものをいくつか組み合わせてみましたが、何かがうまくいかないようです。

これは私の最後の試みです:

ssl_certificate /var/www/domain.com/domain_com.crt;
ssl_certificate_key /var/www/domain.com/domain_com.key;

server {
        listen   443 default_server;
        server_name subdomain1.domain.com;

        location / {
                auth_basic "Restricted";
                auth_basic_user_file /var/www/domain.com/domain.com.passwords;

                proxy_pass              http://subdomain1.domain.com:1234/;
                proxy_set_header        Host    $http_host;
                # proxy_set_header        X-Real-IP       $remote_addr;
                # proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_redirect          https://subdomain2.domain.com/       http://subdomain1.domain.me:1234/;
        }
}

「エラー 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL プロトコル エラー」というメッセージが表示されます。


アップデート:

解決策を見つけたと思いますが、レビューをいただければ幸いです。これも、http アクセスを https 経由に書き換えます。

ssl_certificate /var/www/domain.com/domain_com.crt;
ssl_certificate_key /var/www/domain.com/domain_com.key;

server {
        listen   80;
        server_name subdomain1.domain.com;
        rewrite ^ https://$server_name$request_uri? permanent;
}

server {
        listen   443;
        ssl on;
        server_name subdomain1.domain.com;

        location / {
                auth_basic "Restricted";
                auth_basic_user_file /var/www/domain.com/domain.com.passwords;

                proxy_pass              http://subdomain2.domain.com:1234/;
                proxy_set_header        Host    $host;
                proxy_set_header        X-Real-IP       $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header        X-Forwarded-Proto       $scheme;
                add_header              Front-End-Https         on;
                proxy_redirect          off;
        }
}
4

0 に答える 0