Apache两个redirect条件在一个redirect规则

example.com,现在我需要的是请求来到example.com和www.example.comredirect到https://www.example.com ,

这是我的Apacheredirect代码

RewriteEngine On RewriteCond %{HTTP_HOST} ^example.com$ [NC] RewriteRule ^(.*)$ https://www.example.com$1 [R=301,L] 

如果我添加RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]

浏览器说太多的redirect或redirect循环,如何解决这个问题,我有子域configuration也是这样的情况不影响子域redirect… … –

你不需要这个mod_rewrite

 <VirtualHost *:80> ServerName www.example.com ServerAlias example.com Redirect "/" "https://www.example.com/" </VirtualHost > 

但是如果你真的想使用mod_rewrite

 <VirtualHost *:80> ServerName www.example.com ServerAlias example.com RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://www.example.com/%{REQUEST_URI} [R=301,L] </VirtualHost >