nginx配置http 改为 https(Windows10版)

时间:2024-04-04 16:54:08

1,申请ssl,数字证书,得到  key与pem:  将其放到   nginx/conf目录下

,nginx配置http 改为 https(Windows10版)

2,修改nginx/conf\vhost  对应项目的  .conf文件(没有,自建)【注意,项目文件夹  与  nginx文件夹  同目录】

nginx配置http 改为 https(Windows10版)

2-2,【】里的  替换你自己的

server {
        listen       80;
        listen       443 ssl;

        server_name  【www.你的域名.com ~img(\d).你的域名.com;】
        root 【与nginx同目录的项目目录;】  //【 like:  /data/项目目录名】
        index index.php index.html index.htm;   // 【入口文件】
    
        add_header Access-Control-Allow-Origin *;

        ssl_certificate               【 你的pem.pem;】
        ssl_certificate_key           【 你的ssl.key;】
        
        ssl_session_timeout 5m;
        ssl_protocols SSLv2 SSLv3 TLSv1;
        ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
        ssl_prefer_server_ciphers on;

        if ($ssl_protocol = "") { return 301 https://$host$request_uri; }    【强制转换  https】
        
        【if ($host !~ "^www\.你的域名\.com$") {
            rewrite ^(.*) http://www.你的域名.com$1 permanent;
        }】// 出问题,可以不要
        if (!-e $request_filename) {
           rewrite ^/(.*)$ /index.php last;
        }
        location / {    
            if (-f $request_filename) {
                expires max;
                break;
            }
            gzip_proxied any;
            gzip_min_length 0;
            gzip_buffers     4 8k;
            #gzip_http_version 1.0;
            gzip_types    text/css text/xml  text/plain  image/png application/x-javascript;
            gzip_vary on;
        }
        location ~ \.php$ {
           fastcgi_pass   【Linux上项目对应的域名】;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME /data/  【 linux上项目所在的位置】   $fastcgi_script_name;
           include        fastcgi_params;
        }
    }
 

3,VM共享文件占得 端口号是 443 ,我的改为  5001 (主要是为了与其他服务端口号不冲突)/ 也可以Windows文件与VM的Linux文件不共享,这时无需改变端口号

nginx配置http 改为 https(Windows10版)

nginx配置http 改为 https(Windows10版)

3,这时  nginx  可以占  443 端口   ,启动服务了(nginx安装在Windows上,请自行百度)

4,这些改完后,还要把项目中所有的  http  链接  改为  https,只要有一个便会报错