>백엔드 개발 >PHP 튜토리얼 >服务器 - apache有没有办法限制一个项目中某几个目录的PHP文件可以被访问,其它PHP文件都不能被访问。

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

WBOY
WBOY원래의
2016-06-06 20:48:231115검색

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

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

谷歌什么的 我都搜了。求解。

回复内容:

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

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

谷歌什么的 我都搜了。求解。

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

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

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

<code><directory>
    Order Deny,Allow
    Deny from all
</directory>
</code>

详情参见:http://httpd.apache.org/docs/current/mod/mod_access_compat.html

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即可

最简单的方案,改变目录结构...让那几个文件在同一个目录

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.