将https重定向到http而不会导致客户端错误

时间:2013-11-13 17:14:27

标签: http https nginx

我开发了一款通过https与服务器通信的应用程序。

我最近发现我的证书已过期,现在应用程序拒绝与服务器通信。

NSURLConnection/CFURLConnection (kCFStreamErrorDomainSSL, -9814)

我如何快速修复以便我的应用程序可以正常工作(不安全),直到我可以续订我的证书?

我尝试了以下内容,但该应用仍然存在抗议(与浏览器一样)。

  server {
    ssl on;
    ssl_certificate ssl/server.crt;
    ssl_certificate_key ssl/server.key; 
    listen 443;
    rewrite ^ http://$http_host$uri permanent; # temporary workaround
  }

2 个答案:

答案 0 :(得分:2)

根本不可能。

在发送任何请求之前完成TLS握手和所有检查。这就是“安全”的含义。

答案 1 :(得分:0)

将ssl服务器转换为普通服务器并创建一个重定向所有请求的新ssl服务器

server {
    listen 443;
    server_name whatever.com www.whatever.com;
    return 301 http://$http_host$request_uri;
}
server {
    listen 80;
    server_name whatever.com www.whatever.com;
    # old configurations from the ssl server
}
相关问题