Nginx配置HTTPS证书后报错并无法连接怎么解决(图文)
越来越多的网站开始部署HTTPS加密连接了,不过在部署过程中难免与遇到这样或那样的问题导致无法连接。
例如鸭子哥在配置蓝点网备用服务器的HTTPS证书后就发现无法连接,而Nginx启动时显示并没有什么问题。
在遇到HTTPS连接问题时首先我们需要检查SSL证书是否存在配置问题,例如证书颁发者和使用的前后顺序。
如果本身颁发者和使用者的前后顺序就是错误的那么浏览器自然会提示不可信的证书颁发者,因此需要根据浏览器的报错情况对症下药。
而今天遇到的是浏览器提示证书无效,但证书在主服务器上测试是没有问题的,那么剩下就是Nginx配置问题了。
首先使用以下命令检查下Nginx的版本:
- [root@landian ~]:cd /usr/local/nginx/sbin <===进入Nginx安装目录
[root@landian ~]:nginx -v <===查看Nginx版本
在对比过两台服务器上的Nginx版本后发现相差还是挺大的,主备服务器使用的分别是是Nginx 1.8和1.1版。
然后对比网站的配置文件位于/usr/local/nginx/conf/vhost/中,两台服务器上的配置文件相同:
- server
{
listen 80; <=== 允许80端口即HTTP访问
#listen [::]:80;
listen 443; <=== 允许443端口即HTTPS访问
server_name www.yunhu.net landiannews.com;
index index.html index.htm index.php;
root /home/wwwroot/www.yunhu.net;
ssl_certificate www.yunhu.net.crt;
ssl_certificate_key www.yunhu.net.key;
location ~ /\.
{
deny all;
}
}
通过搜索引起查询后得知某些Nginx版本需要将443端口放在80端口前,但修改测试时发现网站依然无法访问。
查询到的第二种是进行如下修改:
- listen 443; >>> listen 443 ssl;
修改后上传覆盖配置文件并重启Nginx后发现可以正常访问了,因此错误的原因在于配置文件的代码写错了。
但主服务器的版本要高于备用服务器的Nginx版本,listen 443这种写法是支持新版本而不支持老版本的。
所以如果再遇到这类问题首先要检查Nginx版本,不然不同的写法有的支持有的不支持,再折腾也没戏了。
- 上一篇
MySQL无法启动并提示file could not be found的解决办法(图文)
今天在测试时就遇到了MySQL挂掉始终无法启动的问题,看了半天日志也没找出到底是怎么回事。[root@iZ23zpftdweZ ~]# /etc/init.d/mysql start Starting MySQL.. ERROR! The server quit without updating PID file (/us
- 下一篇
linux空间777权限的设置步骤,linux主机文件权限说明
在Unix和Linux的各种操作系统下,每个文件(文件夹也被看作是文件)都按读、写、运行设定权限,所以大家会接触到权限设置方面的问题,同时一些使用linux空间的朋友也会遇到权限设置,如权限777 权限755等,那么权限777是什
相关文章
- 连续20次安全入口验证失败,禁止1小时(图文)
- windows2003系统怎么能让硬盘符一直存在?(图文)
- 连接docker里面的mysql失败解决方法(图文)
- 解决Windows10下无法对docker容器进行端口访问的操作(图文)
- IIS7 IIS8 http自动跳转到HTTPS(80端口跳转443端口)(图文)
- Centos7安装Docker(图文)
- 【建站中网站打不开】HTTP 错误 403.1禁止访问的解决方法(图文)
- 使用phpMyAdmin从备份中恢复MySQL数据库教程(图文)
- 怎么使用phpMyAdmin正确导出MySQL数据库? (图文)
- 怎么使用phpMyadmin优化MySQL数据库?(图文)

微信收款码
支付宝收款码