2012-10-29 48 views
1

我怎么会写the.htaccess文件https://www.domain.com 例如:HTTP重定向没有到https

domain.com => https://www.domain.com 
www.domain.com => https://www.domain.com 
https://domain.com => https://www.domain.com 
http://www.domain.com => https://www.domain.com 

这是我的htaccess:

# Use PHP5.4 Single php.ini as default 
AddHandler application/x-httpd-php54s .php 
<IfModule mod_rewrite.c> 
# For security reasons, Option followsymlinks cannot be overridden. 
# Options +FollowSymLinks 
    Options +SymLinksIfOwnerMatch 
    Options +Indexes 
    RewriteEngine On 
    RewriteCond %{http_host} ^mydomain\.com [NC] 
    RewriteRule ^(.*)$ http://www.mydomain.com/$1 [R=301,NC] 
    RewriteCond %{SCRIPT_FILENAME} !-d 
    RewriteRule ^([^\.]+)$ $1.php [NC,L] 
    RewriteCond %{REQUEST_FILENAME}.php -f 
</IfModule> 
# BEGIN WordPress 

# END WordPress 

我添加下面的代码:

<IfModule mod_rewrite.c> 
# add https to domain. 
    RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 
</IfModule> 

但我的域名仍然是www.domain.com而不是https://www.domain.com。 我应该改变什么?

非常感谢。

+0

Downvoter - 如果你标记了一个问题并降低了它 - 至少写一个评论并解释! – alfasin

+0

我想,当一些用户进入我的网站时,他会得到https不是http没有米他将输入什么地址,所有的字符串重定向用户https://www.domain.com非常感谢 – yossi

回答

0

启用了mod_rewrite并通过httpd.conf的.htaccess然后把这个代码放在你的.htaccessDOCUMENT_ROOT目录下:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTPS} off [OR] 
RewriteCond %{HTTP_HOST} ^domain\.com$ 
RewriteRule^https://www.domain.com%{REQUEST_URI} [L,R=301] 
0

所有你应该做的是以下内容添加到http.conf.htaccess

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

如果编辑http.conf你应该事后重新启动Apache:

service httpd restart