我正在开发一些只能通过https访问的表单。我有一个专用的服务器,它有自己的证书和所有好东西。
所以我的问题实际上有两个方面:
1.强制每个请求都使用https的最佳方法是什么?还有比这更好的方法吗.htaccess/mod_writer规则:
RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
2.强制所有内容都使用https是否有任何潜在的陷阱或缺点,我应该考虑一下(除了开销,无论如何这似乎都不是问题)?
你拥有的应该很好,这是我使用的:
RewriteCond %{HTTPS} !=on RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [R,L]
这 R 表示这是重定向而不是重写,并且 L 表示重写引擎不应再执行任何重写。
R
L
Httpd Wiki
编辑:
SSLRequireSSL 强制所有请求通过HTTPS的指令。详细信息可以在 Apache Documentation .
SSLRequireSSL