当我输入url时,它将重定向到http://www.xyz.in,但如果我将其编辑为https://www.xyz.in,SSL证书开始工作。
问题是如何重定向到https://www.xyz.in当用户在中输入xyz时
配置文件:
$root = (isset($_SERVER['HTTPS']) ? "https://" : "http://") . $_SERVER['HTTP_HOST'];
$root .= str_replace(basename($_SERVER['SCRIPT_NAME']), '', $_SERVER['SCRIPT_NAME']);
$config['base_url'] = $root;
.htaccess文件:
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} (www.)?xyx.in
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
我尝试过将RewriteCond %{HTTPS} off
更改为on
,但它总是重定向到http://xyz.in.
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
我认为将(.*)
更改为^
应该是可行的。如果没有,请告诉我。此外,请确保已启用mod_rewrite。清除浏览器的缓存并尝试此操作。
RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} ^(www.)?xyz.in
RewriteRule ^(.*)$ https://www.xyz.in/$1 [R=301,L]
试试这个。它应该起作用。