我试图在nginx中设置一些重写规则来简化php uris,但是 我似乎无法让它工作,我也无法在其他任何地方找到答案。这是一个简单的问题示例:
假设我在根文件夹中有一个文件test.html
:
<!DOCTYPE html>
<html><body>
Test
<img src="img/image.jpg">
</body></html>
我想做的就是像http://example.com/test/这样的网址会显示html页面。
使用此规则
rewrite ^/test/$ /test.html last;
网站已加载,但服务器似乎最终出现了“错误”。路径。无法显示图片,因为服务器正在/test/img/image.jpg
而不是/img/image.jpg
任何帮助表示感谢。
答案 0 :(得分:0)
你可能想要的是:
rewrite ^/test/$ /test.html last;
rewrite ^/test/(.*)$ /$1 last;
第一条规则会将http://example.com/test/
重定向到您的test.html
文件。现在test.html
加载了新的基本路径/test
,HTML文件中定义的所有后续相对URL都将加载到包含img/image.jpg
的此路径下。这是正确的行为。
我添加的第二行将解析test.html
中相对于其基本目录/
的所有相对路径。