VPS侦探论坛

 找回密码
 注册
查看: 6376|回复: 5

请问require根目录以外的php文件为何出错?

[复制链接]
发表于 2012-5-16 19:41:29 | 显示全部楼层 |阅读模式

我的网站root指向/home/vhosts/sitename/public_html,里面有一个文件index.php;程序文件则在同级文件夹/home/vhosts/sitename/source里,
在index.php中执行:
  1. require_once '/home/vhosts/sitename/source/library/xxx.php';
复制代码
程序在本地apache服务器上测试通过,但部署到nginx服务器下时,却报错说xxx.php文件不存在:
  1. failed to open stream: No such file or directory in /home/vhosts/sitename/public_html/index.php on line 23
复制代码
我把全部文件chown为www:www,chmod为777,情况还是如此,请问如何解决?
我的网站用的是lnmp一键安装包,配置除了root之外基本没有改动过。

[ 本帖最后由 slime09 于 2012-5-16 19:45 编辑 ]
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2012-5-16 20:17:15 | 显示全部楼层


root都指向/home/vhosts/sitename/public_html 这个就相当于锁这里面了,肯定没法你想越界访问就越界访问
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
 楼主| 发表于 2012-5-16 23:23:37 | 显示全部楼层

谢谢,apache的设置里,有一个更高一层的根目录的权限设置,我猜nginx里应该也有,因为zend framework和codeigniter等几乎所有php框架都采用这种目录架构方式,但是我竟然没能在google里搜索到任何此类问题,我不知道是我搜索的关键词不合适,还是别人可以很轻松的解决这个问题,或者原生的nginx单独安装,设置本身就可以支持?
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
 楼主| 发表于 2012-5-16 23:33:48 | 显示全部楼层



刚刚搜到一个帖子真的让我很无语:
http://www.lamppr.com/node/641
这上面说的情况和我遇到的刚刚相反,作者根本就想不出办法来把用户权限锁到文件夹内部。很明显,是lnmp的作者做到了这一点,所以我才没有办法访问。那么请问,这个修改是在哪里实现的呢?我应该怎么才能把它改变回来呢?
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
 楼主| 发表于 2012-5-17 00:38:29 | 显示全部楼层

啊,军哥是lnmp安装包的作者本人吗?请无论如何指导一下吧,谢谢啦。

军哥运维代购:http://shop63846532.taobao.com/

 楼主| 发表于 2012-5-17 08:42:52 | 显示全部楼层

系统重装,然后就好了,真奇怪。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2024-9-23 01:38 , Processed in 0.026954 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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