我想做的就是阻止网站转到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]
答案 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流量都将被重定向。第二部分将重写您的角度索引文件,除了现有的目录和文件