我有一个PHP库,我想分享给我的服务器上的几个虚拟主机,但open_basedir指令是造成麻烦。
我使用ISPConfig 3来pipe理网站。
PHP警告 :include():open_basedir限制有效。 文件(/ var / toaster / latest / __ server / core / cms.PHP)不在第5行的[cut]允许的path中:( [cut:several paths] )
PHPinfo()说:
加载configuration文件 :/etc/PHP5/cgi/PHP.ini
open_basedir : [cut:多个path] (本地和主值)
/etc/PHP5/cgi/PHP.ini说:
; open_basedir =
/usr/local/ispconfig/server/conf/vhost.conf.master说:
<tmpl_if name ='security_level'op ='=='value = '20'>
PHP_admin_value open_basedir <tmpl_var name ='PHP_open_basedir'>
</ tmpl_if>
但是/ etc / apache2 / sites-enabled / [cut:domain] .vhost说:
绝对没有关于open_basedir
所有这一切意味着我不知道的东西设置我的open_basedir指令。 什么哪里?
比预期更容易和明显。
在ISPConfig的“Web域”的“选项”面板中,有一个标记为PHP open_basedir的文本框。 我仍然不知道要创建或编辑哪个确切的配置文件,但它的工作原理。
此外值得一提的是这个文本框 – 创建一个新网站时的默认值可以在以下位置更改:
系统>>服务器配置>>网络>> PHP设置>> PHP open_basedir
非常感谢你的回答! 我到处寻找,答案就在选项屏幕上! 谢谢你,谢谢你,谢谢你!
经过进一步调查,ISPConfig在虚拟主机启动时执行php-cgi。 起始脚本位于/var/www/PHP-fcgi-scripts/web?/.PHP-fcgi-starter,其中的? 代表客户端中的站点号码。 open_basedir作为参数传递给启动。 这就是为什么重写个人PHP.ini不起作用。 至少,当网站是fast-cgi / su-exec时,就是这样配置的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。