首页 > 解决方案 > 重写 Nginx 不起作用

问题描述

http://web.xxxxxx.com/inmuebles-en-venta-en-miraflores-distrito-en-lima-provincia-en-lima-departamento-con-2-banos-con-3-dormitorios-de-18- a-340-metros-cuadrados-de-21-a-5351-dolares.html

网址返回:preciomax = venta0,我不知道为什么

wlistado?tab=venta&distrito=miraflores&provincia=lima&departamento=lima&txt_banos=2&txt_dormi=3&areamin=18&areamax=340&preciomin=21&preciomax= venta0

这是我的重写;但最后一个参数不起作用 rewrite '^/inmuebles-en-(venta|alquiler)-en-(. )-distrito-en-(. )-provincia-en-(.*)-departamento-con-([0 -6]+)-banos?-con-([0-6]+)-dormitorios?-de-([0-9]+)-a-([0-9]+)-metros-cuadrados-de -([0-9]+)-a-([0-9]+)-dolares.html$' /nuestros-inmuebles.php?operacion=$1&distrito=$2&provincia=$3&departamento=$4&banos=$5&dormi= $6&areai=$7&areaf=$8&precioi=$9&preciofin=$10 折价;

请帮忙

标签: nginxurl-rewriting

解决方案


读一点:

RewriteRule 反向引用:这些是 $N (0 <= N <= 9) 形式的反向引用。$1 到 $9 提供从 RewriteRule 访问模式的分组部分(在括号中),该 RewriteRule 受当前 RewriteCond 条件集的约束。$0 提供对该模式匹配的整个字符串的访问。

并按照您的建议,语法将保持不变:

重写'^/inmuebles-en-(?venta|alquiler)-en - (?.)-distrito-en-(?.)-provincia-en-(?.*)-departamento-con-(?[0- 6])-banos?-con-(?[0-6])-dormitorios?-de-(?[0-9]+)-a-(?[0-9]+)-metros-cuadrados-de -(?[0-9]+)-a-(?[0-9]+)-dolares.html$' /nuestros-inmuebles.php?operacion=${group1}&distrito=${group2}&provincia=$ {group3}&departamento=${group4}&banos=${group5}&dormi=${group6}&areai=${group7}&areaf=${group8}&precioi=${group9}&preciof=${group10} 休息;

非常感谢阿列克谢十


推荐阅读