nginx conf 文件中的空格重要吗?

nginx conf 文件中的空格重要吗?

我有一个nginx conf文件,由于使用环境变量,我有一个 shell 脚本 echo,这个文件我称为nginx.conf.template,然后我将回显的结果放入实际中nginx.conf,请参阅下面的 shell 脚本:

#!/bin/sh
function subst() { eval echo -E "$2"; }
mapfile -c 1 -C subst < nginx.conf.template > nginx.conf

我遇到的唯一问题是,它会删除所有缩进空格,我想这会导致问题,但我nginx在其中运行此服务器的 docker 容器似乎没问题。我没有缩进有关系吗?如果有关系,echo 可以保留所述空格吗?

答案1

它不会删除所有空格。它会将每个空格块缩减为一个空格。对于大多数人来说,这不会造成任何影响。如果您的引号字符串中有多个空格,则上面的命令也会更改这些空格。您可以通过在模板中输入引号nginx.conf来轻松检查。grep

与其调整echo以保留空白,不如将模板构建为定界符在脚本中。

摆脱多余的空白可能有助于减少嵌入式环境中的内存占用,但除非您的资源受到严重限制,否则维护从模板到实际配置的格式将使调试更加愉快。

相关内容