【问题标题】:What is this Magento open_basedir issue all about?这个 Magento open_basedir 问题是关于什么的?
【发布时间】:2012-02-29 01:05:50
【问题描述】:

在多个商店中运行 Magento。基础商店完美运行。在到达结帐并切换到 https 时,在二级商店会生成这组警告:

Warning: require_once() [function.require-once]: open_basedir restriction in effect.     

File(/var/www/vhosts/mainstore.com/httpdocs/app/Mage.php) is not within the allowed path(s): (/var/www/vhosts/secondarystore.com/httpdocs:/tmp) in /var/www/vhosts/secondarystore.com/httpdocs/index.php on line 41

Warning: require_once(/var/www/vhosts/mainstore.com/httpdocs/app/Mage.php) [function.require-once]: failed to open stream: Operation not permitted in /var/www/vhosts/secondarystore.com/httpdocs/index.php on line 41

Fatal error: require_once() [function.require]: Failed opening required '/var/www/vhosts/mainstore.com/httpdocs/app/Mage.php' (include_path='.:') in /var/www/vhosts/secondarystore.com/httpdocs/index.php on line 41

phpinfo 为 open_basedir 显示以下内容

local value : /var/www/vhosts/mainstore.com/httpdocs:/tmp
master value: none

什么给了?

【问题讨论】:

    标签: php magento open-basedir php-ini


    【解决方案1】:

    Tl;DR;去喊是管理你服务器的人。

    你是如何运行php_info 函数的?在与 Magento 相同的 PHP 上下文中,还是在没有引导 Magento 的情况下单独使用?在与引发错误的站点的 URL 相同的 .htaccess 和 Apache(或替代 Web 服务器)上下文下,还是在不同的 URL 上下文下?您的 https 设置是否使用与您的 http 设置相同的 apache 配置?设置php.ini 配置值的地方很多。

    1. 您拥有的每个域都可能使用不同的php.ini 文件。域的 SSL 和非 SSL 版本被视为不同的域

    2. 有用户特定的php.ini文件

    3. 可以通过.htaccess文件设置值

    4. 可以在运行时通过 PHP 设置值

    PHP 对您大喊大叫,很可能是因为您的托管公司/IT 人员将https URL 的 PHP 安全功能提高到 11。很有可能,即使您可以找到设置的位置,如果没有管理员权限,您也无法更改它,因此请找到了解您的服务器如何工作的人,您会找到您正在寻找的答案。

    【讨论】:

    • 我从 Magento 所在的同一目录运行 php_info。我不得不在这里对自己大喊大叫。短篇小说:每个人都把我留在了这个洞里。
    猜你喜欢
    • 1970-01-01
    • 2021-12-20
    • 2020-12-12
    • 1970-01-01
    • 2020-11-15
    • 2019-11-14
    • 2016-03-09
    • 1970-01-01
    • 2021-12-02
    相关资源
    最近更新 更多