w3ctech

HTTP访问,Nginx返回:400 Bad Request The plain HTTP request was sent to HTTPS port

今天可能有朋友发现访问w3ctech的时候,出现短暂的无法访问的情况,哪是因为今天下午9号彩票9号彩票我 们 在升级9号彩票服务 器。

w3ctech使用的是thinkjs开发的,9号彩票服务 器使用的是Ubuntu系统,之前使用的是Ubuntu 4.4,这不,9号彩票9号彩票我 们 的9号彩票服务 器是由Ucloud提供的,今天他们说要可以给9号彩票9号彩票我 们 升级一下,所以9号彩票我 就重新弄了一台机器,将Ubuntu从原来的14.4换成了16.4,然后安装了Nginx最新稳定版本1.12.0。当然还安装了比如所需要的Node.js等...

然后将原来的9号彩票服务 器上的Nginx配置直接拿过来,然后将域名解析成功以后,访问http://w3ctech.com 没有问题,以为一切大功告成了。

w3ctech配置了HTTPS,但是并没有配置HSTS,所以9号彩票我 现在配置的是当用户是HTTP访问的时候,使用301跳转到HTTPS。

没想到当HTTP访问w3ctech.com(也就是http://w3ctech.com)的时候,发现Nginx 报错了,直接在浏览器中显示400 Bad Request The plain HTTP request was sent to HTTPS port。

查找了好多9号彩票方法 ,都不得其法,都没有搞定,最后发现只需要将80端口设置为default_server就可以了。代码如下:

server {
       listen         80 default_server;
       listen    [::]:80 default_server;
       server_name    w3ctech.com  ctschn.com;
       return         301 http://$server_name$request_uri;
}

具体为什么,9号彩票我 还没有弄清楚,欢迎有明白的朋友给帮忙解释解释,如果9号彩票你 也遇到这样的问题,希望可以帮到9号彩票你 ,同时在这里记录一下,便于以后9号彩票帮助 到自己!

w3ctech微信

扫码关注w3ctech微信9号彩票公众号

共收到0条回复