使用Symfony1.4发出open_basedir()警告

时间:2012-11-02 08:45:15

标签: php symfony-1.4 open-basedir

经常浏览我的网站我可以看到这个php警告:

  

Warning: is_readable(): open_basedir restriction in effect. File(/var/www/vhosts/<my site>/httpdocs/apps/frontend/modules/.sf/config/config_handlers.yml) is not within the allowed path(s): (/var/www/vhosts/<my site>/httpdocs/:/tmp/) in /var/www/vhosts/<my site>/httpdocs/lib/vendor/symfony/lib/config/sfConfigCache.class.php on line 305

真正的问题是Google正在使用该警告索引我的网页...

如标题中所述,我使用的是Symfony 1.4.18。 我该如何解决?

这是一个Symfony错误,还是我可以解决它的PHP限制?

2 个答案:

答案 0 :(得分:1)

  

真正的问题是Google正在使用该警告索引我的网页...

在生产服务器上,您应始终拥有display_errors = Off

  1. 打开php.ini文件。
  2. 添加display_errors = Off
  3. 重启Apache
  4. opendir:将PHP可以打开的文件限制在指定的目录树中,包括文件本身。

    检查这个答案: open_basedir restriction in effect. File(/) is not within the allowed path(s):

答案 1 :(得分:0)

这是一个Web服务器问题,因为您尝试访问其他虚拟主机上的数据。您需要将位置添加到open_basedir。您应该在/var/www/vhosts//config/vhosts.conf下找到配置文件。您可以添加要访问的新位置,也可以禁用open_basedir限制。 要添加新位置,只需编辑open_basedir部分(例外):

php_admin_value open_basedir "/var/www/vhosts/domain.com/httpdocs:/tmp:/new/path/comes/here"

但是在生产用途中,您应该禁用打印错误。他们应该去,例如日志文件。