Url Nginx与相对路径

Url Nginx与相对路径,url,nginx,relative-path,Url,Nginx,Relative Path,在nginx root上,我们有这样的文件: - test\ image.jpg index.html - ... index.html上有指向image.jpg的链接: <img src='image.jpg'> 对于URL(和For),所有都可以很好地工作,因为相对路径的基础是,并且我们在这个文件夹中有image.jpg 对于,将显示页面,但不显示图像 在这种情况下,最好的解决方案是什么 我想你是说$uri带有I而不是$url带有L 问

在nginx root上,我们有这样的文件:

   - test\
       image.jpg
       index.html
   - ...
index.html上有指向image.jpg的链接:

<img src='image.jpg'>
对于URL(和For),所有都可以很好地工作,因为相对路径的基础是,并且我们在这个文件夹中有image.jpg

对于,将显示页面,但不显示图像


在这种情况下,最好的解决方案是什么

我想你是说
$uri
带有I而不是
$url
带有L

问题是
try\u files
将在
$uri/index.html
处获取文件,但将uri保留为
/test
,因此任何相对uri都将是相对于
/
的,而不是
/test/

如果要在HTML文件中使用相对URI,则必须对目录引用强制执行尾部的
/
。例如:

index index.html;
try_files $uri $uri/ =404;

这将导致
/test
重定向到
/test/
,并且
index
指令将自动尝试子目录中的
index.html
文件。

在这种情况下,最好的解决方案是使用
index.html指令,而不是
尝试\u文件
。在这种情况下,nginx将从
/test
重定向到
/test/
index index.html;
try_files $uri $uri/ =404;