当前位置:  开发笔记 > 编程语言 > 正文

$ document_root变量不能在"root"指令中使用

如何解决《$document_root变量不能在"root"指令中使用》经验,为你挑选了1个好方法。

在设置我的nginx配置时,我遇到了这个问题.有没有人知道为什么会发生这种情况?

root /folder/my_root;

 index index.php index.html index.htm;
 error_page 404 /404.html;
 location = /404.html{
    root $document_root/error_pages; //FAILS HERE with the error in the title
    internal;
 }

Alexey Ten.. 7

该变量由root指令设置.你不能在root指令本身使用它,因为它会导致无限循环.

见http://nginx.org/r/root

路径值可以包含变量,除了$document_root$realpath_root.

请改用您自己的变量.

set $my_root folder/my_root;
root /$my_root;
...

location = /404.html {
    root /$my_root/error_pages;
}

并且不要试图将前导斜杠变为变量.root $var$var在某些默认目录中查找,如/usr/local/nginx/etc/nginx.



1> Alexey Ten..:

该变量由root指令设置.你不能在root指令本身使用它,因为它会导致无限循环.

见http://nginx.org/r/root

路径值可以包含变量,除了$document_root$realpath_root.

请改用您自己的变量.

set $my_root folder/my_root;
root /$my_root;
...

location = /404.html {
    root /$my_root/error_pages;
}

并且不要试图将前导斜杠变为变量.root $var$var在某些默认目录中查找,如/usr/local/nginx/etc/nginx.

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有