使用Nginx重写网站上的URL

时间:2018-06-16 11:36:17

标签: php url nginx mod-rewrite rewriting

我目前的网址是这样的:

mysite.com/test/?country=uk&number=1234&search=British+Telecom&limit=8

我希望如此:

mysite.com/test/uk/1234/British-Telecom/8

我在某种程度上熟悉Apache mod_rewrite但从未遇到过Nginx版本。有人有想法吗?

我发现的其他内容是该网站是Wordpress,普通网页正常工作,网址被重写,但我的代码位于一个单独的非wp文件夹中。为什么当Apache没有运行时,WP的.htaccess似乎有效?

另一个复杂因素是我有Varnish缓存工作 - 这会干扰吗?

1 个答案:

答案 0 :(得分:1)

您必须使用([^/]*)正则表达式捕获变量,然后将其与$1$2 ...

一起使用

使用像这样的htaccess:

RewriteEngine on

RewriteRule ^test/([^/]*)/([^/]*)/([^/]*)/([^/]*)$     ./yourScript.php?country=$1&number=$2&search=$3&limit=$4 [L]
  

使用您的脚本名称更改yourScript.php

相关问题