我不得不切换服务器,我想redirect所有SSLurl到非SSL网站。 我遇到的问题是https站点仍然抛出无效的证书错误,即使通过Apache有redirect实施。
<VirtualHost *:443> ServerAdmin [email protected] DocumentRoot /data/sites/www.example.com/main/ RewriteEngine on Redirect 301 / http://www.example.com SSLEngine on SSLCertificateFile /etc/httpd/ssl/www.examplecom/ssl-cert-snakeoil.pem SSLCertificateKeyFile /etc/httpd/ssl/www.example.com/ssl-cert-snakeoil.key ServerName www.example.com ErrorLog "logs/example.com-error_log" CustomLog "logs/example.com-access_log" common </VirtualHost>
我的问题是,我怎么能做一个redirect,并避免在浏览器中的无效ssl证书错误?
一个正确的SSL证书(包含所有必需的DNS名称,并由客户端浏览器直接或间接信任的CA颁发)和相应的私钥才能获得安全的连接,而不会出现浏览器警告。 事实上,您只是redirect到一个非SSL网站并不重要 – 即使发送HTTP请求之前,浏览器必须validation它连接到正确的服务器。
如果您以前拥有有效的证书,但在服务器迁移过程中丢失了私钥,则需要联系CA以吊销旧证书并重新颁发相同域的新证书。
你不能。 SSL证书validation发生在会话层的附近。 HTTP对话发生在应用程序层。
如果您的业务types符合该types的证书,我build议您获得与主机名相匹配的免费SSL证书。 有许多CA提供免费证书。