尝试使用 SSLPassPhraseDialog 重新启动 apache 时出现错误“无效命令‘echo’...”

尝试使用 SSLPassPhraseDialog 重新启动 apache 时出现错误“无效命令‘echo’...”

使用另一个答案的解决方案,我将以下内容添加到我的 apache 配置中:

SSLPassPhraseDialog exec:/path/to/passphrase-script

我在脚本中放置了以下内容:

#!/bin/sh
echo "put the passphrase here"

现在,当我重新启动 apache 时,出现以下错误:

Invalid command 'echo', perhaps misspelled or defined by a module not included in the server configuration

我是否应该在 shell 脚本中使用其他命令?或者我是否需要以不同方式配置 apache 以使 echo 命令起作用?

答案1

您的 shell ( /bin/sh) 似乎不支持echo作为内置命令,并且您的脚本可能是从未具有有效PATH环境变量设置的环境中调用的。

使用命令的完整路径echo(通常是/bin/echo,有时是/usr/bin/echo)就可以了。

答案2

我遇到了同样的问题,问题在于脚本的位置。它不应该位于“conf-enabled”文件夹或类似文件夹中 - 否则,Apache 会在启动过程中尝试在某个地方运行它。

相关内容