Laravel:如何指定php版本?
Laravel: how to specify the php version?
我在 redhat7 机器上有一个 Laravel (5.7.19) 应用 运行 apache2。机器上安装了 php5.6、php7.1 和 php7.4,apache 以某种方式使用 php5.6 作为默认值,应用程序无法运行php5.6。有没有办法为 Laravel 应用程序指定 php 版本,例如在 .env 或应用程序的其他配置文件中设置 php 版本?我用谷歌搜索,找不到答案。现在我可以让应用程序工作的唯一方法是禁用 php5.6 然后 apache 将使用 php7.1 作为默认值。
“有没有办法为 Laravel 应用程序指定 php 版本,例如在 .env 或应用程序的其他配置文件中设置 php 版本? “
没有。 PHP 解释器没有意识到自己。应用程序的 dotenv 文件由应用程序本身读取,这意味着已经有一个解释器在做这项工作,所以如果它被 php5 拾取,解释器就无法将它传递给 php 7 名口译员。
如果您使用的是 Apache(假设只有一个 Apache 运行),您可以使用 fastcgi 模块在同一个 Apache 服务器下设置多个 PHP 版本此处描述:https://medium.com/@sivaschenko/apache-running-multiple-php-versions-simultaneously-570fc1541580 然后根据应用程序,您可以使用不同的 php 版本
设置虚拟主机
更好的方法是使用 nginx + fpm,您可以在不同的端口上使用不同的 php 版本和不同的 fpm 实例 运行,并且您可以设置服务器块 php 请求被适当地路由。
我在 redhat7 机器上有一个 Laravel (5.7.19) 应用 运行 apache2。机器上安装了 php5.6、php7.1 和 php7.4,apache 以某种方式使用 php5.6 作为默认值,应用程序无法运行php5.6。有没有办法为 Laravel 应用程序指定 php 版本,例如在 .env 或应用程序的其他配置文件中设置 php 版本?我用谷歌搜索,找不到答案。现在我可以让应用程序工作的唯一方法是禁用 php5.6 然后 apache 将使用 php7.1 作为默认值。
“有没有办法为 Laravel 应用程序指定 php 版本,例如在 .env 或应用程序的其他配置文件中设置 php 版本? “
没有。 PHP 解释器没有意识到自己。应用程序的 dotenv 文件由应用程序本身读取,这意味着已经有一个解释器在做这项工作,所以如果它被 php5 拾取,解释器就无法将它传递给 php 7 名口译员。
如果您使用的是 Apache(假设只有一个 Apache 运行),您可以使用 fastcgi 模块在同一个 Apache 服务器下设置多个 PHP 版本此处描述:https://medium.com/@sivaschenko/apache-running-multiple-php-versions-simultaneously-570fc1541580 然后根据应用程序,您可以使用不同的 php 版本
设置虚拟主机更好的方法是使用 nginx + fpm,您可以在不同的端口上使用不同的 php 版本和不同的 fpm 实例 运行,并且您可以设置服务器块 php 请求被适当地路由。