nginx服务器启用SSL访问

Posted 轩宇网工作室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx服务器启用SSL访问相关的知识,希望对你有一定的参考价值。

HTTP和HTTPS的区别

  1. https协议需要到ca申请证书,一般免费证书很少,需要交费。  
  2. http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。   
  3. http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。   
  4. http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

所以在涉及到账户、金钱等敏感信息交互的时候使用HTTPS是个不错的选择。

申请证书

  1. 申请SSL证书过程就不多说了。挺简单的,本文主要是在nginx上配置ssl证书实现https访问。
  2. 将key和证书上传到服务器。

nginx配置

server {
                listen 443;
                #listen [::]:80;
                server_name passport.ddhigh.com;
                index index.html index.htm index.php default.html default.htm default.php;
                root  /home/wwwroot/passport.ddhigh.com;
                include other.conf;
                #error_page   404   /404.html;
                location ~ [^/]\.php(/|$)
                        {
                                # comment try_files $uri =404; to enable pathinfo
                                try_files $uri =404;
                                fastcgi_pass  unix:/tmp/php-cgi.sock;
                                fastcgi_index index.php;
                                include fastcgi.conf;
                                #include pathinfo.conf;
                        }
                location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
                        {
                                expires      30d;
                        }
                location ~ .*\.(js|css)?$
                        {
                                expires      12h;
                        }
                ssl on;
                ssl_certificate /root/crt/server.crt;
                ssl_certificate_key /root/crt/server.key;
                access_log  /home/wwwlogs/passport.ddhigh.com.log  access;
}

/root/crt是我的证书目录,各位读者可以根据实际情况更改。

以上是关于nginx服务器启用SSL访问的主要内容,如果未能解决你的问题,请参考以下文章

Nginx之启用HTTPS网站

nginx 启用http2 https 无法访问的问题

ini 简单的NGINX服务器块用于通过DNSimple启用SSL的静态站点

Zabbix Web启用SSL

nginx多站点,ssl偏爱第一个证书

如何单独为子域名启用 SSL,即使用 HTTPS 访问