开发者社区> 问答> 正文

apache可以限制项目中某几个目录的PHP文件被访问,其它PHP文件都不能被访问吗?

apache有没有办法限制一个项目中某几个目录的PHP文件可以被访问,其它PHP文件都不能被访问。

问题看似简单,但是我想破头也找不出解决方法。

展开
收起
落地花开啦 2016-06-15 18:29:02 2908 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    你据说的【可以被访问】是什么意思,浏览器端可以通过http访问吗?

    例如,www/html, www/pub, www/private三个目录,只有http://test.com/html, http://test.com/pub 可以访问,访问http://test.com/private时报403 Forbidden错误。

    如果是这个需求,apache是可以做到的:

    <Directory /docroot/www/private>
        Order Deny,Allow
        Deny from all
    </Directory>

    Apache安装好之后,自带的httpd.conf里也有这样的示例配置。

    如果你说的访问是指【PHP include】,比如www/index.php,可以include www/html, www/pub两个目录的文件,但include www/private下的文件时,报permission denied,那你只要把www/private的权限设成766,并让apache进程的owner不是www/private目录的owner即可

    2019-07-17 19:40:00
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
阿里云栖开发者沙龙PHP技术专场-深入浅出网络编程与swoole内核-吴镇宇 立即下载
PHP安全开发:从白帽角度做安全 立即下载
PHP 2017.北京 全球开发者大会——高可用的PHP 立即下载

相关镜像