我看到.htaccess Redirect non-WWW to WWW preserving URI string但它並不適合我笨非www重定向到www
工作,如果我去mysite.com/site/something我重定向到mysite.com/something
RewriteCond %{HTTP_HOST} !^www\.mysite\.com$
RewriteRule (.*) http://www.mysite.com/$1 [R=301,L]
也試過:
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^www.mysite.com [NC]
RewriteRule (.*) http://www.mysite.com/$1 [R=301,L]
編輯:
這裏使用的代碼即時通訊的基礎上,阿方索·魯瓦爾卡瓦的回答是:
if (substr($_SERVER['SERVER_NAME'], 0, 3) != 'www')
{
if ($_SERVER['REQUEST_URI'] == '//site/')
{
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.site.com/site/');
exit;
}
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.site.com' . $_SERVER['REQUEST_URI']);
exit;
}
此「// site /」看起來像格式不正確的鏈接。您可能希望在代碼中進行更正(在視圖中?)以避免搜索引擎將其編入索引。 –
哦..鏈接沒有格式錯誤,必須是CI路由或htaccess的東西去除index.php ..行爲是相同的,當我在瀏覽器上輸入地址 – braindamage
'http://www.site.com //網站/'? –