web-dev-qa-db-ja.com

Nginxから強制HTTPSリダイレクトを削除できませんか?

私は当初、HTTPをHTTPSに自動的にリダイレクトするようにNginx構成をセットアップしていました。私の仕事のセキュリティポリシーとCloudflareの統合により、HTTPSはネットワーク内で解決されません。

HTTPSへの強制リダイレクトを削除したいだけです。ただし、URIの書き換えでブロックをコメントアウトした後でも、サーバーは自動的にリダイレクトします。

これがNginxのデフォルト設定です

#HTTPS redirect (if necessary)
#server {
#       listen      80;
#       server_name example.com;
#       rewrite     ^   https://$server_name$request_uri? permanent;
#}

server {
        listen 80;
        listen [::]:80 default_server ipv6only=on;
        listen 443 ssl spdy;
        root /var/www/example/current/public;
        index index.php index.html index.htm;

        spdy_chunk_size 8k;
        spdy_headers_comp 7;

        server_name example.com;
        # Point to ssl certificates
        ssl_certificate /root/example.com.crt;
        ssl_certificate_key /root/example.com.key;
        # Allow only secure TLS protocols
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        #ssl_prefer_server_ciphers on;
        #ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;

        ssl on;

        # Set the buffer size to 1400 bytes (that way it fits into a single MTU$
        ssl_buffer_size 1400;
#       add_header Strict-Transport-Security max-age=63072000;

        gzip on;
        gzip_min_length 1280;
        gzip_buffers    16 8k;
        gzip_comp_level 4;
        gzip_http_version 1.0;
        gzip_types    text/plain text/html text/css application/javascript appl$
        gzip_vary on;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ /index.php$is_args$args;
        }

        # pass the PHP scripts to FastCGI server listening on /var/run/php5-fpm$
        location ~ \.php$ {
                try_files $uri /index.php =404;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_nam$
                include fastcgi_params;
        }

        location ~* \.(css|js|gif|jpe?g|png|woff2?)$ {
                #gzip on;
                #gzip_vary on;
                expires 168h;
                add_header Pragma public;
                add_header Cache-Control "public, must-revalidate, proxy-revali$
                add_header Vary "Accept-Encoding";
        }


        #include /etc/nginx/global/*;
}

どんな助けでも大歓迎です!ありがとうございました。

3
Tyler

まず、ssl on;を削除します

次に、Strict-Transport-Securityヘッダーがあり、ブラウザーはそれを2年間記憶していました(コメントアウトされたヘッダーが言うように)。 max-age=0を付けて追加し直し、効果を削除します。

それができない(またはすぐに効果が欲しい)場合は、 この記事 のようにブラウザからHSTSをクリアしてください。

9
Alexey Ten