我正在Heroku上开发一个有几个子域的站点。其中之一是注册(就像在signup.myapp.com中一样),它需要SSL -当然!但是其余的子域,例如www,不需要https来访问。
问题是客户端只为signup.myapp.com购买了SSL证书。这意味着,当用户尝试使用https (例如https://www.myapp.com)访问我的站点的其他地方时,SSL证书不会验证,浏览器会告诉用户该站点可能是恶意的……不利于品牌推广。
我试图使站点从https重定向到http,但这当然失败了,因为SSL在重定向可以发送之前进行了检查。
有没有一种方法可以拒绝从https访问我网站的这些地方,这样用户就会遇到例如404页面?或者,你知道处理这种情况的其他方法吗?(客户端不会获取新的SSL证书,特别是通配符证书)。
发布于 2012-02-14 12:19:25
不幸的是,您需要每个域的证书(或您提到的通配符),例如:
问题是,证书是第一件检查的事情,远在任何其他事情发生之前。如果失败,浏览器通常会显示"get me out here!“通知的-kind。没有对SSL到非SSL转换的内置支持。
您可以关闭https://www.example.com (即使您的网络服务器不侦听端口443),但这当然不会产生404,这也不利于品牌推广。
如果只有一个非通配符证书,您唯一能做的就是将所有页面放在该域下。也就是说,你需要做的不是https://signup.example.com/a/b/c,而是https://www.example.com/signup/a/b/c或其他类似的事情。
另一方面,您可以在GoDaddy上以低于100美元/年(或2年总计150美元)的价格购买证书:
因此,根据您的环境,它可能只需要支付这笔费用,而不是进行任何额外的开发。
https://stackoverflow.com/questions/9267325
复制相似问题