duanpai6581
2016-06-08 18:07
浏览 77
已采纳

.htaccess强制HTTPS

I've been struggling for a while to find a method of using .htaccess to force HTTPS on my website. Any way I've tried has resulted in a redirect loop. I found a PHP alternative and amended it to suit my webserver, but I'd like the .htaccess equivalent if anybody could help.

if ($_SERVER['HTTP_X_FORWARDED_PROTO'] != "https") {
    header("HTTP/1.1 301 Moved Permanently");
    $location = "https://" . $_SERVER[HTTP_HOST] . $_SERVER[REQUEST_URI];
    header("Location: $location");
    exit;
}

图片转代码服务由CSDN问答提供 功能建议

我一直在努力寻找一种方法来使用.htaccess在我的网站上强制使用HTTPS。 我试过的任何方式都会导致重定向循环。 我找到了一个PHP替代方案并对其进行了修改以适应我的网络服务器,但我想要.htaccess等效,如果有人可以提供帮助的话。

  if($ _SERVER ['HTTP_X_FORWARDED_PROTO']  !=“https”){
 header(“HTTP / 1.1 301永久移动”); 
 $ location =“https://”。  $ _SERVER [HTTP_HOST]。  $ _SERVER [REQUEST_URI]; 
标题(“位置:$ location”); 
退出; 
} 
   
 
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dpict99695329 2016-06-08 18:11
    已采纳

    You can use this rule in your root .htaccess:

    RewriteEngine On
    
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [L,R=301,NE]
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题