在我的后端服务器作为反向代理之前,我使用nginx进行SSL终止。 我想redirect所有无效的https域(不是SSL),redirect到Nginx的SSL终止http。 我不想为所有网站做这个单独的每一个,我想要一个通用的解决scheme,所有的请求没有HTTPS,但打开与HTTPS和redirect到HTTP自动。 我有nginx的SSL终止。 谢谢
没有办法redirect无效的SSL。 首先从HTTPSredirect到HTTP需要成功的SSL连接,以便在SSL连接内部的HTTP级别完成redirect。 无法首先build立SSL连接(因为无效),因此无法在HTTP级别进行redirect。
当您从监听端口443的服务器取下authentication时,nginx将在该端口上启动一个常规的HTTP服务器,因为nginx是Port不可知的。
您必须在nginx的服务器块中放置有效的证书,否则客户端将不会执行服务器块中定义的任何操作,包括redirect。 一个“无效的连接”就像你说的那样断开了连接,并且不可能(幸运地)以一种你描述的方式强制一个客户端从HTTPS到HTTP。