在活动服务器上,我对Drupal8.4和7使用不同的Drush和PHP版本。我使用composer require drush/drush:9.*将Drush 9安装到~/drush9目录中。
在开发服务器和Drupal8.4上,我对Drush 9使用了site.alias.yml文件。
live:
host: hostingexample.com
user: user
root: /home/user/example.com/public_html/
uri: http://example.com/
paths:
drush-script: '/opt/php70/bin/php /home/user/drush9/vendor/bin/drush'当我运行drush @site.live ev 'print PHP_VERSION'时,我会得到这个错误。
bash: /opt/php 70/bin/php/home/user/drush9/供应商/bin/drush:没有此类文件或目录
如果我在.bash_profile文件中添加这些行并在site.alias.yml中更改drush-script: '/home/user/drush9/vendor/bin/drush',就会得到一个错误,因为默认的PHP是5.3。
alias php=/opt/php70/bin/php
alias drush9=~/drush9/vendor/bin/drushParse :语法错误,第98行/home/user/drush9/vendor/drush/drush/src/Config/Environment.php中的意外'[‘
如何为活动服务器使用不同的PHP并将其设置为Drush 9别名?
发布于 2018-10-13 04:00:08
尝试同时编辑.bash_rc和.bash_profile文件,以便包含您想要的第一个PHP版本(在现有路径之前)的目录:
(添加这一行,如果存在,则进行调整):
export PATH="/opt/php70/bin:$PATH"
作为最后的努力,您还可以在以下文件中设置env变量drush查找:
DRUSH_PHP=/opt/php70/bin/php
发布于 2023-05-03 16:14:13
在drush 10+中,可以在self.site.yml中设置路径变量,因此OP的情况将按以下方式解决:
live:
host: hostingexample.com
user: user
root: /home/user/example.com/public_html/
uri: http://example.com/
paths:
drush-script: '/home/user/drush9/vendor/bin/drush'
env-vars:
PATH: /opt/php70/bin/php:/bin:/usr/bin注:我不认为这适用于drush 9(但我很高兴被证明不是这样)。
https://drupal.stackexchange.com/questions/251033
复制相似问题