redirect - php file_get_contents, location redirection
I use the sme_block script for IP blocking on my website. The script takes the IP list from block_this.txt. However, this only works if block_this.txt is in the same directory. How to make php files from other directories access block_this.txt? Because uploading the same block_this.txt to every directory is too time consuming, list is updated often and website has many directories. Same problem with redirecting for blocked IPs (location:).
function smeblock($a)
{
$temps=file_get_contents("block_this.txt");
$cts = explode("|", $temps);
foreach ($cts as $ctsc)
{
$ctsc = trim($ctsc);
$word = preg_quote($ctsc, '#');
$pattern = "#$word#i";
if ( preg_match($pattern, $a) )
{
header('Location:https://www.google.com'); die();
}
}
}
Answer
Solution:
You could provide the absolute path to blocklist, e.g.
function smeblock($a)
{
$temps = file_get_contents("/var/www/html/block_this.txt");
//...
}
or define the path as a global constant:
const PATH_TO_BLOCKLIST = '/var/www/html/block_this.txt';
function smeblock($a)
{
$temps = file_get_contents(PATH_TO_BLOCKLIST);
//...
}
Source