1

当有人进入http://(非安全)时,有两种可能的情况。我想编写一个 .htaccess 文件以通过以下方式解决这两种情况:

1)他们不使用子域。

解决方案:重定向到https://www.+ 剩余 URL。

2)他们使用http://www.http://subdomain.

解决方案:重定向到https://subdomainOR https://www.(无论使用哪个)+ 剩余 URL。

如何在我的 .htaccess 文件中解决这个问题?

这是我当前的文件:

 RewriteEngine on
 RewriteCond $1 !^(index\.php|images|css|js|font|uploads|robots\.txt)
 RewriteRule ^(.*)$ /index.php/$1 [L]
4

1 回答 1

1

通过启用 mod_rewrite 和 .htaccess httpd.conf,然后将此代码放在您.htaccessDOCUMENT_ROOT目录下:

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

# redirect to https://www. + remaining URL.
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^domain\.com$ [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# They use either http://www. or http://subdomain.
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^[^.]+\.domain\.com$ [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
于 2013-03-22T21:32:52.693 回答