1
virusdefender 2015-02-10 09:59:47 +08:00 2
chrome://net-internals/#hsts
|
2
ryd994 2015-02-10 10:00:51 +08:00 1
这种事情干嘛php做……
web服务器直接rewrite效率高多了 |
3
roychan 2015-02-10 10:06:07 +08:00 1
Nginx 下可以这么配置:
if ($server_port = 80) { return 301 https://$server_name$request_uri; } if ($scheme = http) { return 301 https://$server_name$request_uri; } |
4
ihciah 2015-02-10 10:15:14 +08:00 1
修改.htaccess
或者按照一楼的策略在返回头里添加Strict-Transport-Security:max-age=15768000 |
5
Jaylee 2015-02-10 10:25:09 +08:00 1
server {
listen 80; server_name www.xx.com; add_header Strict-Transport-Security max-age=15768000; return 301 https://$server_name$request_uri; } |
6
aruisi OP |
7
JQ 2015-02-10 13:00:24 +08:00
直接在DNS里面做,DNSMadeasy支持转发的。
|
8
luo362722353 2015-02-10 15:40:34 +08:00 via iPhone
Nginx 301永久重定向路过
|
9
aruisi OP @ihciah 我在apache下用以下.htaccess可以实现,请问这个如何改成nginx的格式?
RewriteEngine on RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R] |
10
aruisi OP @luo362722353 是这样么
if ($server_port !~ "^443$"){ set $rule_0 1$rule_0; } if ($rule_0 = "1"){ rewrite ^/.*$ https://$server_name$uri redirect; } |
11
bjzhush 2015-02-10 16:58:16 +08:00
请先Gooooooooooooooooooooooogle
|
12
shepherd 2015-02-10 17:13:02 +08:00 via iPhone 1
|
13
ryd994 2015-02-10 18:40:30 +08:00 1
|
15
ryd994 2015-02-10 20:09:33 +08:00
|
17
aruisi OP @ryd994 Jaylee的方法是对某个特定的域名的做http强制跳转https吧,我的意思是对所有来到这个页面的http请求根据来路跳转到https也就是说当访问http://abc.com时来到了这个页面然后被自动转向到https://abc.com当http://123.com也来到这个页面也被自动转向到https://123.com就是不是针对某个特定的域名,而是所有来到此页面的请求均被其原来的来路替换为https://跳转。
晕,我说的太绕口了........ |
18
ryd994 2015-02-10 23:45:51 +08:00 via Android
@aruisi 他的方法没错,server_name又不是只能填一个
RTFM: http://nginx.org/en/docs/http/ngx_http_core_module.html#server_name $host总是对应当前处理的请求…… |
21
msg7086 2015-02-11 05:46:06 +08:00
|