gpt4 book ai didi

angularjs - HTTP 重定向到 HTTPS,同时保持 Angular 路由 (.htaccess)

转载 作者:可可西里 更新时间:2023-11-01 17:28:00 25 4
gpt4 key购买 nike

我想做的就是阻止站点转到 http 而不是 https。这是我的 .htaccess 配置。只有 www.mywebsite.com 和 mywebsite.com 不使用 https。 Angular 路线也可以。如果我写 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]

最佳答案

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

这就足够了:

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

要使 Angular 路由起作用,您需要另一个像这样的 block

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

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

关于angularjs - HTTP 重定向到 HTTPS,同时保持 Angular 路由 (.htaccess),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42961848/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com