htaccess重定向HTTPS

时间:2014-02-07 15:28:59

标签: php apache .htaccess mod-rewrite redirect

在尝试将http重定向到https时,我的htaccess文件遇到了一些麻烦。我已经查看了堆栈上的其他问题,我已经尝试实现它们,看看它是否会解决我的问题,但是到目前为止还没有任何工作

我正在尝试使用htaccess进行重定向,如果它的http://然后重定向到https://

这是我原来的htaccess规则,我正在尝试修改此功能以使用https

# Get rid of www.
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

#route to index
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]

任何人都可以发现我需要做的工作,我所做的每一次尝试都会导致服务器错误

此致

1 个答案:

答案 0 :(得分:0)

您需要在条件中添加[OR]标记:

# Get rid of www.
RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.|)(.+)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

如果没有https ,如果有www

,这样就可以重定向