我有3个网站的现场,登台和开发,开发网站有所有文件的副本从现场和数据库副本,但登台不是,因为他们都在同一物理服务器(登台和开发)我想同步文件从开发到现场(它是30 in ),但我的php脚本无法打开文件的一个路径是symlink。
我有symlink
/srv/www/staging.server.com/htdocs/people/ to /srv/www/dev.server.com/htdocs/people/
我有一个示例文件/srv/www/dev.server.com/htdocs/people/gnokii/zuluwarrior.svg,我可以从逗号行和浏览器访问它(通过/srv/www/staging.server.com/htdocs/people/zuluwarrior.svg),但是php不能打开这个文件。
file_exists返回false,file返回空数组。(我有将svg转换为png的代码,可以在活动服务器和开发服务器上运行,但不能在staging上运行)。
有没有什么php配置可以禁用同步链接?我找到了suhosin.executor.allow_symlink = Off,但我想它是用来执行脚本的。有什么想法,怎么解决这个问题?
发布于 2012-07-20 05:20:28
我找到了将base_dir设置为'/srv/www/staging.server.com‘和将suhosin.executor.allow_symlink设置为Off的原因
此标志在使用open_basedir时重新激活symlink(),这在Suhosin >= 0.9.6中默认为禁用。在使用open_basedir时允许使用symlink()实际上是一个安全风险。
https://stackoverflow.com/questions/11560747
复制相似问题