Php Magento open_basedir限制生效。文件(/tmp)不在允许的路径内:
在所有页面/产品中,我在Magento CMS上上传图像时遇到一些问题。 我已经启用了erro日志,我将报告它以供检查。 注:仅用于邮寄,我已将我的地址域替换为“mydomain.com”。仅用于样品 [Sun Feb 02 15:02:14 2014][error][client 146.105.28.41]客户 服务器配置拒绝: /var/www/vhosts/mydomain.com/httpdocs/app/etc/local.xml [Sun Feb 02 15:02:18 2014][error][client 146.105.28.41]客户 服务器配置拒绝: /var/www/vhosts/mydomain.com/httpdocs/app/etc/local.xml [Sun Feb 02 15:02:36 2014][warn][client 151.67.115.48]mod_fcgid: stderr:PHP警告:未知:open_basedir限制生效。 文件(/tmp)不在允许的路径内: (/var/www/vhosts/mydomain.com:/usr/share/php:/usr/share/pear) 第0行未知 [Sun Feb 02 15:02:36 2014][warn][client 151.67.115.48]mod_fcgid: stderr:PHP警告:文件上载错误-无法创建临时文件 文件位于第0行的未知位置Php Magento open_basedir限制生效。文件(/tmp)不在允许的路径内:,php,magento,Php,Magento,在所有页面/产品中,我在Magento CMS上上传图像时遇到一些问题。 我已经启用了erro日志,我将报告它以供检查。 注:仅用于邮寄,我已将我的地址域替换为“mydomain.com”。仅用于样品 [Sun Feb 02 15:02:14 2014][error][client 146.105.28.41]客户 服务器配置拒绝: /var/www/vhosts/mydomain.com/httpdocs/app/etc/local.xml [Sun Feb 02 15:02:18 2014]
您需要为/tmp添加open_basedir豁免,完全关闭open_basedir,或者将php temp目录更改为/var/www/vhosts/mydomain.com中的某个目录
<Directory /var/www/vhosts/mydomain.com/>
php_admin_value upload_tmp_dir /var/www/vhosts/mydomain.com/temp
</Directory>
php_admin_value upload_tmp_dir/var/www/vhosts/mydomain.com/temp
这里的答案不适用于我:
- /tmp的open_basedir异常通常不是最好的解决方案,因为这意味着用户可以访问其他用户的tmp文件(可能存在安全问题)
- open_basedir通常处于活动状态是有原因的,完全关闭它可能是一个安全问题
- 修改上载\u tmp\u目录后,问题仍然出现
sys\u temp\u dir
设置为open\u basedir目录中的一个值后,magento的安装工作正常
为了安全起见,我检查了phpinfo()
中显示的所有tmp路径,并对它们进行了如下更改:
php_admin_value upload_tmp_dir/var/www/myvirtualhost/tmp
php\u admin\u value soap.wsdl\u cache\u dir/var/www/myvirtualhost/tmp
php_admin_value opcache.lockfile_path/var/www/myvirtualhost/tmp
php_admin_value sys_temp_dir/var/www/myvirtualhost/tmp