给nginx配置SSL证书之后,https可以正常访问,http访问显示400错误,nginx的配置如下:server { listen 80 defa
给nginx配置SSL证书之后,https可以正常访问,http访问显示400错误,nginx的配置如下:
server {
listen 80 default backlog=2048;
listen 443;
server_name linuxyan.com;
root /var/www/html;
ssl on;
ssl_certificate /usr/local/Tengine/sslcrt/linuxyan.com.crt;
ssl_certificate_key /usr/local/Tengine/sslcrt/linuxyan.com.key;
}
http访问的时候,报错如下:
400 Bad Request
The plain HTTP requset was sent to HTTPS port. Sorry for the inconvenience.
Please report this message and include the following information to us.
Thank you very much!
说是http的请求被发送到https的端口上去了,所以才会出现这样的问题。
server {
listen 80 default backlog=2048;
listen 443 ssl;
server_name linuxyan.com;
root /var/www/html;
ssl_certificate /usr/local/Tengine/sslcrt/linuxyan.com.crt;
ssl_certificate_key /usr/local/Tengine/sslcrt/linuxyan.com.key;
}
把ssl on;这行去掉,ssl写在443端口后面。这样http和https的链接都可以用,完美解决。
原文标题:Nginx环境下http和https(ssl)共存的方法
原文地址:http://www.abcde.cn/info/show-26-1511-1.html
版权归网络时代所有,转载请注明出处
本文详细介绍了在Nginx环境中如何同时使用http和https协议,通过调整配置文件,解决了http请求被错误地发送到https端口导致的400错误问题,实现了两种协议的共存。
3503

被折叠的 条评论
为什么被折叠?



