如何使用Apache2使PHP文件仅对localhost,404为其他IP可见

时间:2016-03-16 03:13:19

标签: php apache security debian localhost

我试图限制哪些IP可以访问用于管理我系统的MySQL服务器的example.com/adminer.php。

我一直在尝试使用apache的配置文件,设置或工具来实现这一目标,以便稍后我可以将此方法应用于其他文件或目录。

我已按照网站上的说明安装了Adminer,除了无法将其限制为localhost外,一切似乎都运行良好。

我尝试在apache2 security.conf文件中添加以下内容,重启后没有运气。

系统:Debian 8.1

<Files /adminer.php>
   Order Deny,Allow
   Deny from all
   Allow from localhost
</Files>

1 个答案:

答案 0 :(得分:1)

我能想到的一个快速方法是在php文件中插入一些代码。

<?php
if ( ! ($_SERVER['HTTP_HOST'] == 'localhost' || $_SERVER['REMOTE_ADDR'] == '127.0.0.1') ) {
    header("HTTP/1.1 404 Not Found");   
    exit();
}

http://php.net/manual/en/function.header.php