首先要到证书提供商购买域名证书(推荐Symantec/GeoTrust 品牌证书,一切都是为了网站安全。)

本实验使用的是自签证书,如果不知道怎么制作请点这里OPENSSL生成SSL自签证书。

设置nginx.conf配置文件,访问默认http监听的80端口将自动转给https监听的443端口,这样就强制使用SSL证书加密了。

server {
    listen 80;
    server_name www.mydomain.com;
    
    rewrite ^(.*)$ https://${server_name}$1 permanent;
}

server {
    listen 443;
    server_name www.mydomain.com;

    ssl on;
    ssl_certificate /etc/nginx/conf.d/ssl/server.crt;  #证书存放路径
    ssl_certificate_key /etc/nginx/conf.d/ssl/server.key; #密钥存放路径
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    
    ssl_session_cache    shared:SSL:1m;
    ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers  on;
    
    client_max_body_size    50m;

    location / {
        root   /home/www/html;
        index  index.html index.htm;
    }
#..........................省略部分内容
    error_page 404 /404.html;
    error_page 500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

}

或者使用return形式重定向到https

server {
    listen 80;
    server_name www.mydomain.com;
    
    return 301 https://${server_name}$request_uri;
}
#.......其余内容同rewrite类似

 

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐