我想在我的 VPS 上使用 drush 来执行 drupal 维护任务。但是,根据我安装的防火墙的自检结果的建议,我已经禁止 exec() 来自 php 。Drush 显然想要这个特权,我已经看到了三个选项来完成这项工作。
- 启用 exec()
- 使用php安全模式
- 将帐户的 php.ini 更改为“disable_functions = system, exec, shell_exec, passthru”
我的帐户是 Linux VPS 上唯一的管理员,我不打算改变它。我是 VPS 及其安全问题的新手。请告知哪个选项提供更安全的方法。
终端输出:
>exec() has been disabled for security reasons bootstrap.inc:639 [warning]
The following restricted PHP modes have non-empty values: [error]
disable_functions and magic_quotes_gpc. This configuration is
incompatible with drush. Please check your configuration settings in
/usr/local/lib/php.ini or in your drush.ini file; see
examples/example.drush.ini for details.
exec() has been disabled for security reasons exec.inc:150 [warning]
exec() has been disabled for security reasons exec.inc:150 [warning]
exec() has been disabled for security reasons exec.inc:150 [warning]
unlink(/home/site1/drush/lib/package.xml): No such file or [warning]
directory drush.inc:798
The drush command 'status' could not be found. Run `drush [error]
cache-clear drush` to clear the commandfile cache if you have
installed new extensions.
Drush needs a copy of the PEAR Console_Table library in order to [error]
function, and the attempt to download this file automatically failed.
To continue you will need to download the 1.1.3 package from
http://pear.php.net/package/Console_Table, extract it into
/home/site1/drush/lib directory, such that Table.php exists at
/home/site1/drush/lib/Console_Table-1.1.3/Table.php.