我找到了几种将非SSL重定向到SSL的解决方案,但我不想为特定目的这样做。因为它仍然会通过互联网发送未加密的信息。
我想强制用户调用SSL,否则他们无法使用该页面。
所以我需要将非SSL重定向到错误页面(简单的HTML)。如果SSL访问该页面则不执行任何操作。
任何人都有一个很好的htaccess吗?最好与CodeIgniter兼容。
答案 0 :(得分:1)
我找到了几种将非SSL重定向到SSL的解决方案......它仍会通过互联网发送未加密的信息。
如果您收到非SSL请求并立即执行30X重定向,则传递的唯一未加密数据是请求的URL和重定向标头。我怀疑那有什么不妥。
将所有非SSL请求发送到一个页面:
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule .* insecure.html [L]
答案 1 :(得分:0)
您应该能够添加mod_rewrite规则来执行此操作,在文档根目录中的htaccess文件中添加之前的:
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^name-of-protected-page /non-ssl-error-page.html [L,R]
答案 2 :(得分:0)
如果您想将非SSL用户重定向到错误页面,请使用此功能(请注意,这会将非SSL用户重定向到您网站的所有页面):
RewriteEngine on
RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule . error.php [L]
如果您希望用户将自己重定向到错误页面,请将[R]
标记添加到最后一行:
RewriteRule . error.php [L,R]