[英]PHP redirect for www to non-www with 301 on IIS
我想一劳永逸地解决这个问题:
<?php if ($_SERVER['HTTP_HOST'] != 'domain.com'){
header("Location: http://domain.com"
.$_SERVER['REQUEST_URI']);
} ?>
这会将所有流量发送到NON-WWW版本。
我的问题是-我可以添加“ header('HTTP / 1.1 301 Permanentlyly');' 安全又不会搞砸一切?
我使用的是IIS服务器,所以.htaccess不好,而且所有页面都用PHP编码-欢迎使用所有解决方案。
当然可以。 利用header()
提供的所有参数:
<?php
if ($_SERVER['HTTP_HOST'] != 'domain.com'){
header("HTTP/1.1 301 Moved Permanently", true, 301);
header("Location: http://domain.com".$_SERVER['REQUEST_URI']);
}
最后一个参数是根据需要强制将响应代码设为301。
当然可以,它不会弄乱任何东西! 但是它必须位于标题位置行后面的if子句中:
<?php
if ($_SERVER['HTTP_HOST'] != 'domain.com'){
header('HTTP/1.1 301 Moved Permanently');
header("Location: http://domain.com".$_SERVER['REQUEST_URI']);
}
?>
但是,如果使用URL重写(也称为“ IIS mod_rewrite”),则更好: http : //www.iis.net/downloads/microsoft/url-rewrite或其他不在PHP代码中的重定向。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.