gpt4 book ai didi

.htaccess - 如何在一条规则中强制 SSL _and_ 删除 www?

转载 作者:太空宇宙 更新时间:2023-11-03 13:18:14 25 4
gpt4 key购买 nike

我有一个 ExpressionEngine 站点,我需要在其中强制执行 SSL 删除 www.从网址。我正在使用这段代码:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$ [NC]
RewriteRule ^(.*)$ https://%2/$1 [R=301,L,QSA]

# Remove index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteRule ^(.*)$ index.php/$1 [L]

但我刚刚意识到,如果有人访问 https://www.URLHERE.com他们不会删除 www。有没有一种方法可以在一个规则中同时强制使用 SSL 和删除 WWW(即我可以做一个“或”之类的东西吗?)或者我是否必须制定 2 条规则,一个用于删除 WWW,一个用于强制使用 SSL?

最佳答案

在您的规则中为这两个条件设置 OR 条件:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=302,L,NE]

// rest of your rules here...

关于.htaccess - 如何在一条规则中强制 SSL _and_ 删除 www?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19359444/

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