Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony2:chroot环境中的prod?_Php_Symfony_Fastcgi_Freebsd - Fatal编程技术网

Php Symfony2:chroot环境中的prod?

Php Symfony2:chroot环境中的prod?,php,symfony,fastcgi,freebsd,Php,Symfony,Fastcgi,Freebsd,作为学习练习,我使用Symfony更新了一个本地非营利组织的现有应用程序。开发是在Windows环境中进行的。现在应用程序已经安装在ISP的共享主机上,我开始了解FastCGI服务器上的chroot。存在如下错误: PHP致命错误:未捕获异常“UnexpectedValueException”,带有 消息“流或文件” 无法找到“/home/projectmana/www2.projectmana.org/app/logs/prod.log” 要打开:无法打开流:中没有此类文件或目录 /www2.

作为学习练习,我使用Symfony更新了一个本地非营利组织的现有应用程序。开发是在Windows环境中进行的。现在应用程序已经安装在ISP的共享主机上,我开始了解FastCGI服务器上的chroot。存在如下错误:

PHP致命错误:未捕获异常“UnexpectedValueException”,带有 消息“流或文件” 无法找到“/home/projectmana/www2.projectmana.org/app/logs/prod.log” 要打开:无法打开流:中没有此类文件或目录 /www2.projectmana.org/app/cache/prod/classes.php:4823

ISP的响应是:

坏路。PHP位于/home/projectmana/中


嗯。我知道这就是问题所在。到目前为止,网络搜索还没有提供如何进行的线索。(我对Symfony希望避免共享主机的做法更为欣赏。)作为一名相对新手和志愿者,是否有一种解决方案可以在我的代码中实现,或者应用程序必须找到一个新家?

您必须根据您的chrooted目录设置
doc\u root
变量:

doc_root = "/home/projectmana"
cgi.fix_pathinfo = 0

您可以在php.ini文件中执行此操作-这似乎不是您的选项,因为您在共享服务器环境中。当使用Apache作为Web服务器时,您可以使用
.htaccess
文件,并通过
PHP\u value

在该实例中的解决方案是覆盖缓存和日志目录的位置。但是,这本身会导致
cache:clear
命令失败。如果我自己找不到这个问题的答案,那么这个问题的答案将不得不出现在另一个问题中

使现代化
这里的另一个解决方案无法工作,因为当Apache服务器运行FastCGI时,.htaccess中的任何php设置都会导致服务器错误。清除缓存从未解决过,因此该站点被移动到非CGI主机。

@akluth:现在我更糊涂了。我昨天经历了所有这些,但仍然有问题。现在一切似乎都正常了,但对于一条带参数的路线,结果是401。我昨天看到了这一点——当时我返回到清除缓存等,开始得到上面的错误。也许问题陈述不正确。@akluth:刚刚确认-清除缓存,在缓存和日志上强制执行
chmod-R 777
会返回上述错误。由于php.ini或Apache都不可用,我尝试根据symfony的配置食谱覆盖日志和缓存目录。这似乎解决了除路线问题以外的所有问题。这是下一步。回复:htscanner已删除。需要管理权限;不适用于最终用户/开发人员。