May*_*yak 6 php redhat symfony
我试图将我的项目移到使用Apache的linux redhat服务器上,但是我所面临的问题是该服务器安装了2个不同的PHP版本。
Symfony(2.5.12)似乎/usr/bin/php默认情况下会查找php可执行文件,但安装了5.2版本,其他项目需要该版本。
At /opt/rh/php55/root/usr/bin/php是我想用于symfony的PHP 5.5的已安装版本。
那么,如何配置Symfony以使用在自定义路径中安装的php版本?
Ewo*_*out 20
我知道这很旧,但是与安装的PHP版本相比(使用7.1,OSX Mojave的默认版本),我遇到了同样的Symfony问题。我的$PATH变量指向较新的7.2版本,并php -v显示7.2,而Symfony仍使用7.1。
看起来好像在我跑步时就解决了:
symfony local:php:list
Run Code Online (Sandbox Code Playgroud)
它列出了我系统上的所有PHP版本,并将7.2标记为默认版本。运行并执行之后,symfony server:start它是在7.2上。
该php:list命令还为设置项目的特定PHP版本提供了有用的说明:
要控制目录中使用的版本,请创建一个
.php-version包含版本号的文件(例如7.2或7.2.15)。如果您使用的是SymfonyCloud,则还可以在.symfony.cloud.yaml文件中指定版本。
我做的时候也遇到了同样的问题symfony serve。
首先我跑去symfony local:php:list了解我的项目使用的是哪个版本的php。
然后我运行echo 7.4.9 > .php-version(7.4.9是我下载的最新php版本)来切换我的项目的php版本。
这对我来说可以。
如果您的 Web 应用程序使用了错误版本的 PHP,则这是 Apache 配置问题。如果是命令行,这实际上很容易修复,您只需要确保它/opt/rh/php55/root/usr/bin/在您的$PATHbefore 中/usr/bin。
你可以在你的~/.bashrc或 ~/.bash_profile用这个来做到这一点:
export PATH=/opt/rh/php55/root/usr/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
把它放在最后,注销并重新登录。您也可以直接在命令行中弹出它,但它仅适用于当前会话,因此~/.bashrcor ~/.bash_profile选项更好。