我在https://example.com/assets/content/foo.xml下有一个xml文件,但我希望它作为https://example.com/foo.xml访问它。因此结果将是,浏览器URL应该是= https://example.com/foo.xml,但我将从https://example.com/assets/content/foo.xml location获取文件上下文。如何在haproxy中设置?
我尝试了许多解决方案,但没有一个奏效。这是我尝试过的,这将是完全错误的。
acl SEO_XML path_beg -i /foo.xml
http-request set-header X-Location-Path %[capture.req.uri] if SEO_XML
http-request replace-header X-Location-Path /foo.xml /assets/content/foo.xml if SEO_XML
http-request redirect location %[hdr(X-Location-Path)] if SEO_XML
use_backend shiba_dev_https if SEO_XML
我也尝试了其他的解决方案如下:
reqrep ^([^ :]*) /foo.xml/(.*) 1 /assets/content/foo.xml/2
http-request set-header Host example.com
http-request replace-path /foo.xml(.*) /assets/content/foo.xml1
这些都不起作用,因为我不知道怎么做。有什么想法吗?
Haproxy Version = 1.8
试试这个:
reqirep ^([^ :]*) /foo.xml (.*) 1 /assets/content/foo.xml 2 if { path_beg /foo.xml }