从http://域重定向到http://www.domain会创建一个循环,因为URL不会更改

时间:2015-09-22 23:46:42

标签: php wordpress .htaccess redirect infinite-loop

我正在尝试直接在应用程序上从http://domain重定向到http://www.domain,但是网址没有改变,所以当重新加载页面时,它会一次又一次地变成循环。

wp_redirect(Wordpress使用的功能)和我自己(我使用header("Location: $url"))都无法重定向并进行循环。

当我尝试使用.htaccess重定向时,一切都变成了循环。

我的应用程序在OpenShift上,我使用CloudFlare作为DNS服务器。

@edit

这是.htaccess

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

这是index.php的第一行

$subdomain = array_shift((explode(".",$_SERVER['HTTP_HOST'])));
if($subdomain != 'www'){
    $url = 'http://www.'.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];
    header("Refresh:0; url=$url");
    //header('Location: http://google.com.br');
    exit();
}

当我使用Refresh代替Location时,它会一直有效,直到保存缓存。几个小时后。

0 个答案:

没有答案