全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 4047|回复: 21

[经验] nginx下的php访问权限貌似终于完美解决了

[复制链接]
发表于 2009-11-23 19:37:40 | 显示全部楼层 |阅读模式
http://www.hostloc.com/viewthrea ... ighlight=%2Bfreebsd

原来发的貌似有问题,但绝不是网上某人说的原因。
nginx在80端口接受到访问请求后,会把请求转发给9000端口的php-cgi进行处理
而如果修改php.ini中open_basedir= ../../../../../ ,针对两个不同的网站,www.a.com , www.b.com都会把请求发送给9000处理,而如果先访问www.a.com那么../../../../../就会变成A网站的根目录地址,然后这时候如果你访问www.b.com,那么open_basedir仍然是A网站的根目录,但是对于B来说,又是不允许访问的,所以就造成了,第二个站点打开以后会出现no input files


真是的,居然不能用,怒了,修改源代码解决,代码清楚的表明 open_basedir 每次请求都是重新计算路径的,会出现所说的问题,是因为php执行的时候经常会改变当前路径,造成最后 ../../../../../ 以后路径不对,而不是请求一次open_basedir就固定了。

修改以后重新编译,非常完美,不用 ../../../这些东西了

演示站点:
http://www.xyhack.net
http://uc.anxsoft.com
http://www.anxsoft.com

不用 ../../../,完美自然的限制住在自己网站的根目录,每个网站不用特别的配置,php不能访问到别的网站目录里
ys.jpg (29.28 KB, 下载次数: 6)

配置情况

phpini.jpg (26.36 KB, 下载次数: 6) 1.jpg (12.57 KB, 下载次数: 6) 2.jpg (16.25 KB, 下载次数: 6) 3.jpg (13.21 KB, 下载次数: 6)

大家看看,如果到明天没什么问题就把修改方法公布

[ 本帖最后由 freebsd 于 2009-11-23 19:40 编辑 ]
发表于 2009-11-23 19:51:20 | 显示全部楼层
收藏一下,暂时没用难搞死。
发表于 2009-11-23 20:20:24 | 显示全部楼层
我也就這里沒弄明白 今天總算來了教程 等明天的修改教程
发表于 2009-11-23 20:24:20 | 显示全部楼层
好贴,建议斑竹射精
发表于 2009-11-23 20:26:40 | 显示全部楼层
等教程```现在VPS10多个站,急需啊
发表于 2009-11-23 20:32:41 | 显示全部楼层
呵呵,暂时用不到了
发表于 2009-11-23 20:40:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2009-11-23 20:41:36 | 显示全部楼层
坐等楼主的教程,为了这个问题折腾了很久了。
发表于 2009-11-23 20:55:28 | 显示全部楼层
原帖由 freebsd 于 2009-11-23 19:37 发表
http://www.hostloc.com/viewthrea ... ighlight=%2Bfreebsd

大家看看,如果到明天没什么问题就把修改方法公布


怎么看啊?怎么哪里?你给出的网址没有webshell怎么看?
发表于 2009-11-23 21:17:45 | 显示全部楼层
期待,webshell能给测试下不?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-14 05:05 , Processed in 0.069551 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表