强制用户通过 www 访问该网站。和 https

发布于 2024-08-20 04:06:47 字数 743 浏览 4 评论 0原文

我正在尝试编写一个附加 www 的 .htaccess 规则。到域,如果需要的话到http,但我似乎找不到适用于每种情况的规则或一组规则。

这些案例是...

\https://www.site.com - 应该可以工作

\http://www.site.com - 应转至 \https://www.site.com

\http://site.com - 应该转到 \https://www.site.com

\https://site.com - - 应该转到 \https://www.site.com

任何帮助将不胜感激。

I am trying to write an .htaccess rule that appends www. to the domain and s to http if required but I can't seem to find a rule or set of rules that works for each case.

The cases are...

\https://www.site.com - should just work

\http://www.site.com - should go to \https://www.site.com

\http://site.com - should go to \https://www.site.com

\https://site.com - - should go to \https://www.site.com

Any help would greatly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

窝囊感情。 2024-08-27 04:06:47

尝试此规则:

RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)
RewriteRule ^ https://www.%2%{REQUEST_URI} [L,R=301]

这应该涵盖请求不是 HTTPS(第一个条件)或主机不以 www. 开头(第二个条件)的两种情况。在这种情况下,第三个条件将获取没有起始 www.(如果存在)的主机,然后在规则的替换中使用该主机。

Try this rule:

RewriteCond %{HTTPS} !on [OR]
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)
RewriteRule ^ https://www.%2%{REQUEST_URI} [L,R=301]

This should cover both cases in which either the request was not HTTPS (first condition) or the host does not start with www. (second condition). In that case the third condition will grab the host without the starting www. (if present) that is then used in the rule’s substitution.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文