我想检测进入我网站的用户是否已进入www
子域名,这是最常见的,并且在这种情况下会将其重定向到www
。基本上,如果用户输入mysite.com
我需要将它们重定向到www.mysite.com
,但我不知道如何仅使用PHP检测到这一点?我的$_SERVER
数组不包含此类信息。这有可能吗?
答案 0 :(得分:2)
你可以尝试使用Apache
mod rewrite(把它放在.htaccess
文件中)
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
答案 1 :(得分:1)
更糟糕的解决方案是使用PHP:
if (substr($_SERVER['SERVER_NAME'], 0, 4) !== 'www.') {
header('Location: http://www.' . $_SERVER['SERVER_NAME']);
exit();
}
使用.htaccess:
从性能角度解决方案更好RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]