我尝试使用以下重定向前两个作品,但最后一个不起作用。不确定我这样做是否正确
重定向工作:
/forums https://test/forums 200
/forums/* https://test/forums/:splat 200
重定向不起作用
/pushed/*/p7.min.css https://test/:splat/p7.min.css 200
网址看起来像这样。我尝试在中间使用 * 的原因是 res 路径后面的数字总是会改变。所以我需要一个每次都有效的 url 重写,因为我们不知道随机数
https://test1/pushed/res/638314797085341666/p7/p7.min.css
https://test2/pushed/res/638320800675496601/p7/p7.min.css
*
字符可能会导致 /pushed/*/p7.min.css
的重定向规则出现问题。在许多 Web 服务器设置(包括标准 Apache 安装)中,*
不作为 URL 中间的通配符运行。相反,您可以使用变量捕获 URL 的动态部分并在重定向中使用它。
RewriteEngine On
RewriteRule ^pushed/([^/]+)/p7.min.css$ https://test/$1/p7.min.css [R=301,L]