现在如果有人这样做,我 100% 会重定向https://mysite.com
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName mysite.com
ServerAlias www.mysite.com
RewriteEngine on
RewriteRule (.*) http://%{HTTP_HOST} [L,R=permanent]
<VirtualHost>
但是,现在我想有条件地重定向。如果用户转到https://mysite.com/abc/,那么我想使用 https;否则重定向。
我该怎么做?我尝试阅读文档,但就是找不到我需要的内容。
我在 Ubuntu Linux 上使用 Apache。
答案1
尝试添加重写条件(重写条件)之前重写规则我会尝试写类似这样的内容:
RewriteCond %{REQUEST_URI} !^.*(abc).*$ [NC]
如果这没有帮助的话,这里还有一些额外的阅读材料:
-http://www.whoopis.com/howtos/apache-rewrite.html
-http://www.sitepoint.com/article/apache-mod_rewrite-examples/
答案2
我将重现我在 Slicehost 论坛上给您的答案:
RewriteRule !^/abc/ http://%{HTTP_HOST} [L,R=permanent]
(已编辑)
答案3
这里有 apache 的示例: https://httpd.apache.org/docs/trunk/rewrite/remapping.html#canonicalhost
您也可以使用以下指令来实现此目的:(2.4 及更高版本)
重定向“/”http://www.example.com/“或者,例如,要将您网站的一部分重定向到 HTTPS,您可以执行以下操作:
重定向“/admin/”https://www.example.com/admin/“