我有一個WordPress的網站我試圖鎖定到一組IP地址。我用下面的代碼中的index.php的第一件事:(這裏混淆IPS)Wordpress IP限制w /標題位置重定向
$matchedIP = 0;
$IP = $_SERVER['REMOTE_ADDR'];
$validIPs = array("x.x.x.x", "x.x.x.x", "x.x.x.x", "x.x.x.x", "x.x.x.x");
foreach($validIPs as $validIP)
{
if($IP == $validIP)
{
$matchedIP = 1;
}
}
if($matchedIP == 0)
{
header('Location: http://google.com.au');
}
的IP檢查工作正常,如什錦斷言可以證實。不工作的是重定向,這從來不會發生。完整的index.php是如下:
<?php
$matchedIP = 0;
$IP = $_SERVER['REMOTE_ADDR'];
$validIPs = array("x.x.x.x", "x.x.x.x", "x.x.x.x", "x.x.x.x", "x.x.x.x");
foreach($validIPs as $validIP)
{
if($IP == $validIP)
{
$matchedIP = 1;
}
}
if($matchedIP == 0)
{
header('Location: http://google.com.au');
}
/**
* Front to the WordPress application. This file doesn't do anything, but loads
* wp-blog-header.php which does and tells WordPress to load the theme.
*
* @package WordPress
*/
/**
* Tells WordPress to load the WordPress theme and output it.
*
* @var bool
*/
define('WP_USE_THEMES', true);
/** Loads the WordPress Environment and Template */
require('./wp-blog-header.php');
//require('./phpinfo.php');
好奇的是,當評論了WordPress博客頭需要和包括需要一個簡單的phpinfo頁面,而不是,重定向行爲與預期相同。
我誤解了PHP的處理方式?它甚至會考慮在下面加載任何必需的文件之前它應該打到重定向?
編輯:視窗IIS7後端PHP版本5.2.17,WordPress版本3.4.2
嘗試增加一個'出口(0);'了'header'指令之後。編輯:順便說一句,你可以通過使用['in_array'](http://php.net/manual/en/function.in-array.php)去除'foreach'-loop。 – vstm
謝謝!這完全奏效!您應該將其作爲答案提交,以便將其標記爲已回答。 :) – Taz