Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。为了提高网站安全性,往往要在Nginx服务器上安装配置SSL证书,以实现https加密访问。本次在Nginx配置好SSL证书后,内网可以正常访问,但是在外网访问提示400错误,这时该怎么办呢?
Nginx配置SSL证书报错400,错误代码为nginx: 400 Bad Request | The plain HTTP request was sent to HTTPS port,为了解决这个问题,我们可参考以下步骤进行操作。
1、先查看/usr/local/nginx/conf/nginx.conf配置,注意include字样,可能是fastcgi_params文件或fcgi.conf文件。然后用vi命令打开该文件:
vi /usr/local/nginx/conf/fcgi.conf
也可能是下面这种格式,主要取决于nginx.conf配置文件位置。
vi /etc/nginx/fastcgi_params
打开文件后,接着在文件的结尾添加以下代码:
fastcgi_param HTTPS $fastcgi_https;
2、修改网站对应的配置文件,可以是conf文件或者是sites-enabled文件夹中的默认配置文件,本文这里用的是sites-enabled文件夹中的默认配置文件default,利用vi命令修改。
vi /etc/nginx/sites-enabled/default
在文件的顶部(注意不要放到server{}里面)添加下面这段代码:
map $scheme $fastcgi_https {
default off;
https on;
}
3、运行/usr/local/nginx/sbin/nginx -t检查一下配置文件有没有语法错误。
4、最后利用命令/etc/init.d/nginx restart重启Nginx。
以上是关于Nginx配置SSL证书报错400的解决方法介绍,希望对大家有所帮助。
2、本站所有文章、图片、资源等如果未标明原创,均为收集自互联网公开资源;分享的图片、资源、视频等,出镜模特均为成年女性正常写真内容,版权归原作者所有,仅作为个人学习、研究以及欣赏!如有涉及下载请24小时内删除;
3、如果您发现本站上有侵犯您的权益的作品,请与我们取得联系,我们会及时修改、删除并致以最深的歉意。邮箱: i-hu#(#换@)foxmail.com