免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2578 | 回复: 9
打印 上一主题 下一主题

[Web] 各位老大指点一二apache+php下的虚拟主机用户防互相访问目录 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-09-08 21:02 |只看该作者 |倒序浏览
如果有用户A 目录/usr/local/www/data/A
         用户B 目录/usr/local/www/data/B

通过php的功能设置好像只能设置将目录访问限制在/usr/local/www/data下但不能防止用户A在知道用户B的目录后编程访问

提供php或jsp的大型商业虚拟主机最专业的解决方法是什么呢?
是suexec么

请指教

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2005-09-08 23:22 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

在需要限制的虚拟主机的配置里面加上:

php_admin_value open_basedir "虚拟主机根目录"

论坛徽章:
0
3 [报告]
发表于 2005-09-09 08:43 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

以前有过类似的帖子,讨论了好几种方法,你搜索一下吧。

论坛徽章:
0
4 [报告]
发表于 2005-09-09 12:49 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

原帖由 "HonestQiao" 发表:
在需要限制的虚拟主机的配置里面加上:

php_admin_value open_basedir "虚拟主机根目录"


先谢谢老大们

以我的目标来说这一步只能让php不访问/usr/local/www/data以外的目录,
不能保证A用户不访问/usr/local/www/data/B目录


而且这是适用于php,那jsp呢

搜索了一下最接近的一帖
http://chinaunix.net/jh/13/27129.html
还是要求用suexec,但那是要建立真实用户的,虚拟用户的好处就失去了
我也同意这一帖中

原帖由 "hwin" 发表:

--------------------------------------------------------------------------------
hwin 回复于:2003-05-01 12:59:03
如果php_admin_value能支持apache的 这样的语句就好了
php_admin_value open_basedir /home2/%2+

<VirtualHost 111.111.111.111>;
    ServerAdmin admin@xxxx.com
    ServerName www.vhost-u1.xxxx.com
    CustomLog /home/logs/vhost-u1-access_log combined
    ErrorLog /home/logs/vhost-u1-error_log
    VirtualDocumentRoot /home/vhosts/%2+/%1
    VirtualScriptAlias  /home/vhosts/%2+/cgi-bin
    php_admin_value open_basedir /home2/%2+
</VirtualHost>;


这一观点,哈
看来必须是php专门针对这一问题解决,通过apache是不能达到最理想解决了?

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
5 [报告]
发表于 2005-09-09 12:58 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

原帖由 "lcfeng" 发表:


先谢谢老大们

以我的目标来说这一步只能让php不访问/usr/local/www/data以外的目录,
不能保证A用户不访问/usr/local/www/data/B目录


而且这是适用于php,那jsp呢


每个虚拟主机都这么设置啊,他们只能访问自己的虚拟主机的网页文件的目录的。
也就是A只能访问A的目录,B只能访问B的目录。
JSP还没有好的办法

论坛徽章:
0
6 [报告]
发表于 2005-09-09 13:12 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

编辑中老大的帖就回了,感动中...

我的本意是用apache的vhost_alias
结合设置pureftpd的一个功能即虚拟用户如果home目录不存在,在第一次访问时自动建立

好处就是不用设置httpd.conf,也不用去重启apache,不用去建立目录,用pureftpdmanage在线增加用户,即开即用

也许是我太理想化,太懒


按老大的方法当然是可以完成工作,但要改httpd.conf,又要重启apache
心里总是...,哈

希望这一问题早点圆满解决


http://bbs.chinaunix.net/forum/viewtopic.php?t=555543

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
7 [报告]
发表于 2005-09-09 13:23 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

原帖由 "lcfeng" 发表:
编辑中老大的帖就回了,感动中...

我的本意是用apache的vhost_alias
结合设置pureftpd的一个功能即虚拟用户如果home目录不存在,在第一次访问时自动建立

好处就是不用设置httpd.conf,也不用去重启apache,不..........


如果这样似乎还没有很好的方法。

你可以去看看http://www.suphp.org/

论坛徽章:
0
8 [报告]
发表于 2005-09-10 12:39 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

suphp应该可以解决.

没测试过.

论坛徽章:
0
9 [报告]
发表于 2005-09-18 22:25 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

以下是我的实现方式,不知能否实现各位所说的功能

UseCanonicalName Off
VirtualDocumentRoot /data/%1
    <Directory "./">;
        php_admin_value open_basedir ./:/usr/local/lib/php
    </Directory>;

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
10 [报告]
发表于 2005-09-18 22:41 |只看该作者

各位老大指点一二apache+php下的虚拟主机用户防互相访问目录

原帖由 "cfstudio" 发表:
以下是我的实现方式,不知能否实现各位所说的功能

UseCanonicalName Off
VirtualDocumentRoot /data/%1
    <Directory "./">;
        php_admin_value open_basedir ./:/usr/local/lib/php
    </D..........


但是似乎如果是子目录操作父目录,就存在问题了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP