【问题标题】:How can I turn my Symfony 4 application from dev mode into production mode?如何将我的 Symfony 4 应用程序从开发模式转变为生产模式?
【发布时间】:2018-08-10 10:26:10
【问题描述】:

在我的本地主机上,我可以通过更改 .env 将环境从开发模式转变为生产模式:

 APP_ENV=dev

进入

APP_ENV=prod

然后我清除终端中的缓存:

php bin/console cache:clear --env=prod

这在本地机器上运行良好。但是在我的服务器上,我无法使用此命令清除缓存。

终端输出错误:

Parse error: syntax error, unexpected '?' in www/project/bin/console

所以在我的页面上我只看到:

哎呀!发生错误 服务器返回“404 Not Found”。 东西坏了。请让我们知道您在此期间在做什么 错误发生。我们会尽快修复它。对不起任何 造成的不便。

【问题讨论】:

  • 检查产品服务器上的 php 版本。 Symfony 4 需要 7.1.3+
  • 您的操作系统是什么(Linux、Windows)?
  • @VadimAshikhman php 版本是最新的。我的意思是开发模式在服务器上运行良好。只是不是生产模式
  • @ImanaliMamadiev 服务器的系统是Linux。我的本地系统是 OSX
  • 最好再次检查服务器php版本。该错误消息正是您在尝试使用低于 7.1 的 php 版本运行控制台时得到的。我知道你说它以开发模式在你的服务器上运行,但这是极不可能的。

标签: symfony caching terminal server production-environment


【解决方案1】:

检查您的控制台选择 php 版本。它可能与您的 nginx 虚拟主机 中配置的 php-fpm 版本不同。您至少需要 7.1

检查

php -v

如果您安装了多个 php 版本,您可以使用以下命令更改当前控制台 php 版本:

sudo update-alternatives --config php

我将为您提供当前安装在您服务器上的可能的 php 版本列表。

【讨论】:

  • 我不允许在服务器上使用“sudo”,因为它是共享主机
  • 但是你必须能够使用 php -v 检查 php 版本
  • 是的,php -v 输出 PHP 5.6.37 但我的网站设置为 PHP 7.1,当我打电话给主机时,他们还告诉我这是 PHP 7.1,他们无法制作更高的 php版本
  • php -v 显示实际输出。无论如何你的主人告诉你的是 5.6.37 你可以描述他们目前的情况,如果你没有权限在没有 sudo 的情况下更改它。
  • 您可以尝试做的另一件事可能会起作用,具体取决于您的主机配置方式以及权限:/usr/bin/php7.1 -v 如果可行,则 /usr/bin /php7.1 bin/console --version 应该也可以。
猜你喜欢
  • 2019-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-04
  • 2022-11-13
  • 1970-01-01
  • 2020-12-01
相关资源
最近更新 更多