2016-03-06 103 views
2

我试图强制所有通信的HTTPS和我尝试添加以下行的.htaccess:问题将HTTP重定向到https

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]` 

的问题是,目前的.htaccess文件已经下面的代码:

<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine On 
    RewriteBase/

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 

    RewriteRule ^(.*)$ index.php [NC,L] 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

</IfModule> 

我结合这两种如下:

<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine On 
    RewriteBase/

    RewriteCond %{HTTPS} off 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 

    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L] 

    RewriteRule ^(.*)$ index.php [NC,L] 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

</IfModule> 

不幸的是,这是行不通的。我收到一个重定向循环错误...提前感谢您的帮助。

+0

为什么要解释“工作中的折痕”实际上意味着什么,并展示您的最终尝试不符合您的期望。 – arkascha

+0

对不起,但这是不可读的。在你的问题下面有一个编辑按钮。用它。 – arkascha

+0

@arkascha,我已经编辑了主帖,因为评论使得它不可读。我感谢你的帮助。 – Dominguesr

回答

0
<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine On 
    RewriteBase/

    RewriteCond %{HTTPS} =off 
    RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-l 
    RewriteRule^index.php [L] 

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

</IfModule>