我们最近为 AXA(欧洲银行)开发了两个相当简单的 PHP 应用程序。URL 为 axa.tfo.be/incentives/cipres 和 axa.tfo.be/incentives/zrkk(这两个网站的访问权仅限于拥有带加密密码的 cookie 的访问者)
在外部公司之前进行的安全审计中,发现了几个安全问题。所有这些问题都已由同事 PHP 开发人员解决。
然而,最后添加了一个要求——所有数据都应通过 https 传输。
但是我的 php 同事正在度假 - 目前无法联系。所以我联系了我的主机,并要求安装 SSL 证书。我自己对 SSL 没有任何知识/经验,因此对于以下问题我有点不知所措。
我的网络主机今天为子域名 axa.tfo.be(www.combell.be)安装了 Comodo SSL 证书 + 唯一 IP 地址。
但是,它似乎不起作用。我今天早些时候发布了一个关于此问题的问题,并被告知不用担心,请参阅链接:如果安装 SSL 证书会发生什么?
当前的问题:
- Web 应用程序无法通过 https 访问,但 http 可以访问(如果有有效的 cookie)
- 有一个静态 html 页面http://axa.tfo.be/incentives/cipres/static.html,即使该页面也只能通过 http 访问
我的网络主机告诉我“我的应用程序可能不支持 SSL”,并要求我在我的 php 代码中将 SSL 变量设置为 true。
所以我的问题:
- 我对 php 有基本了解,但不知道从哪里开始了解“php ssl 变量”。这些网站已经上线一段时间了,并且已经针对常规 php 访问进行了开发。(Google 也没有给我带来任何帮助。)
- 有人能给我指出正确的方向,或者给我一些线索,告诉我是否/应该向我的网络主机寻求进一步的帮助吗?
- (我的时间有点紧,周一网站将再次接受审核,我不想失去这个客户......)
感谢您对此进行调查,如果我的问题听起来有点幼稚,请原谅我——我是一名网页设计师,而不是服务器专家......
答案1
您与 HTTP 服务器的连接是否通过 SSL 与 PHP 无关(除非您在 PHP 中放入某些内容来验证连接是否通过 SSL,https://
如果不是则重定向到)。PHP 中的应用程序支持与您的服务器和客户端浏览器之间是否可以建立 SSL 连接无关。
简单来说,您的提供商在欺骗您;他们的回应听起来就像是他们没有设置 Web 服务器以正确允许 SSL 连接。
或者,您的域名 DNS 是否仍指向非专用 IP 地址(该地址可能未配置 SSL 侦听器)?
答案2
网站https://axa.tfo.be/incentives/cipres/static.html正在提供自签名 SSL 证书。AXA 的 IT 部门(具体而言,拥有 axa.tfo.be 域的人)需要获取有效的证书才能与 Web 服务器一起使用。
正确安装 SSL 证书后,您需要设置某种重定向,以便通过纯 HTTP 访问需要 HTTPS 的 URL。这可以在 Web 服务器配置或 PHP 中完成。Web 服务器配置方法的性能会更好,而如果 Web 服务器的负责人不合作,从应用程序编程方面来看,PHP 的重定向可能更灵活。