您何时必须在configuration中使用引号?

我见过有人用过多的引号

add_header 'Access-Control-Allow-Origin' '*'; 

我见过没有人引用 :

 add_header Access-Control-Allow-Origin *; 

据我所知,两者都能正常工作,所以你什么时候必须使用引号?

确切的答案是“从不”。 您可以引用或“ – ”查看一些特殊字符,如“”或“;” 在string(字符,会使语句的含义模糊),所以

 add_header X-MyHeader "Test String;"; 

会像

 add_header X-MyHeader Test\ String\;; 

在现实中:只要用引号:)


编辑:正如有些人喜欢挑剔:不一定完整的列表可以使一个语句不明确的字符是根据我对nginxconfiguration语法的理解:

 <space> " ' { } ; $ \ 

为了避免variables扩展,甚至可以在引用string中使用$\来避免。

不幸的是,我无法在文档中find这样的字符的完整和权威的列表。

包含空格和/或其他特殊字符的值需要引号,否则nginx将不会识别它们。 在目前的例子中,引号没有什么区别,但无论如何引用值是一个很好的做法/经验法则