HTTP保留角度路由时重定向到HTTPS(.htaccess)

时间:2017-03-22 20:18:31

标签: angularjs .htaccess http redirect https

我想做的就是阻止网站转到http而不是https。这是我的.htaccess配置。只有www.mywebsite.com和mywebsite.com没有去https。角度路线也可以。如果我写mywebsite.com/signup,它也会转到https。我该怎么做才能将所有方案重定向到https?

方案:

www.website.com - >不是https

website.com - >不是https

website.com/signin - > HTTPS

www.website.com/signin - > HTTPS

RewriteEngine On

  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -f [OR]
  RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} -d
  RewriteRule ^ - [L]


  RewriteRule ^ /
  RewriteCond %{HTTPS} off
  RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

1 个答案:

答案 0 :(得分:1)

前2个重写条件将忽略现有文件和目录,但根目录(通常)始终存在。尝试删除第一个块。

这就足够了:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

对于工作的角度路线,你需要另一个这样的块

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^ index.html

这样,所有非SSL流量都将被重定向。第二部分将重写您的角度索引文件,除了现有的目录和文件