一篇除草文。

先前使用Nginx主要是使用LNMP架构的时候使用,最近碰到需要独立使用Nginx的情况,需要配置SSL证书,作一记录。

首先安装Nginx,参考:《Ubuntu下安装Nginx最新版本

接下来就是配置。

vi /etc/nginx/sites-enabled/default

在里面的server{}下方加入:

server {
    listen 443;
    server_name test.gongzi.org;
    ssl on;
    root /var/www/html;
    index index.html index.htm;
    ssl_certificate /etc/ssl/test.gongzi.org.crt;
    ssl_certificate_key /etc/ssl/test.gongzi.org.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        root /var/www/html;
        index index.html index.htm;
    }
}

接下来配置访问非HTTPS时的强制跳转:

在上述配置文件的80端口监听的位置,加入:

return 301 https://test.gongzi.org$request_uri;

如:

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        return 301 https://test.gongzi.org$request_uri;

        root /var/www/html;
        index index.html index.htm index.nginx-debian.html;
        server_name test.gongzi.org;

        ......
}

重启Nginx。

“您与此网站之间建立的连接并非完全安全”问题解决

此问题是由于页面内引用了非HTTPS的连接,修改页面中的此链接指向即可。