У меня возникла необходимость сделать переадресацию на адреса с www через 301 редирект в PHP. Возможно я это сделал кустарным методом, но главное, что она работает нормально :)

$http_host = getenv('HTTP_HOST');
$t1 = substr($http_host, 0, 4);
$t2 = 'www.';
if($t1 != $t2)
{
	$location = 'http://www.'.getenv('HTTP_HOST').getenv('REQUEST_URI');
	header("HTTP/1.1 301 Moved Permanently");
	header("Location: $location");
	exit;
}