nginx 环境下 http 跳转 https

nginx 环境下 http 跳转https,配置文件(.conf)写法:

server {
    listen  80;
    server_name  xxxxxxxxx.com  www.xxxxxxxxx.com;
    root   "指向的路径";

    rewrite ^(.*)$ https://www.xxxxxxxxx.com$1 permanent; 

    location / {
        index  index.php index.html index.htm;
    }

    location ~ \.php(.*)$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  PATH_INFO  $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
        include        fastcgi_params;
    }
}

server {
    listen       443;
    server_name  xxxxxxxxx.com  www.xxxxxxxxx.com;
    root   "指向的路径";

    ssl                  on;
    ssl_certificate      "cert.pem";
    ssl_certificate_key  "cert.key";

    ssl_session_timeout  5m;

    #ssl_protocols  SSLv2 SSLv3 TLSv1;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    ssl_prefer_server_ciphers   on;

    location / {
        index  index.php index.html index.htm;
    }

    location ~ \.php(.*)$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  PATH_INFO  $fastcgi_path_info;
        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
        include        fastcgi_params;
    }

}

CentOS、windows(phpstudy-nginx-php) 环境下亲测有效。

你可能感兴趣的:(Linux服务器)