在.htaccess中写入多个重写规则

时间:2016-03-21 10:24:55

标签: .htaccess codeigniter mod-rewrite codeigniter-2 codeigniter-3

我目前的codeigniter .htaccess是:

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

并且有2个.htaccess。 一个在根,另一个在应用程序文件夹中。

我想一次写下以下重写规则:

1。删除index.php

2. 强制将www.example.com重定向到http s ://example.com

3. 强制将http.example.com重定向到http s ://example.com

4. 强制将www.example.com/cart重定向到http s ://example.com/cart

1 个答案:

答案 0 :(得分:1)

试试这个:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule ^(.*) https://example.com/$1 [QSA,L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]

在config.php(codeignter)中:

$config['index_page'] = '';

我希望有所帮助:)