Nginx重写url以获得干净的url

Nginx重写url以获得干净的url,nginx,rewrite,Nginx,Rewrite,我有一个网站,下面的url结构,我在nginx上运行 现在我的目标是使用nginx rewrite将其转换为下面的版本 其中1是页码,是动态的 获得干净url的确切规则是什么 除此之外,我还需要一个规则,以防有人给页面一个负值,它将自动重定向到页码的正值 现在我现有的配置如下 例如: location ~ /category.php$ { if ( $args ~ ^page=[-]*([0-9]+)&query=([\w]+)$ ) { set $pg $1;

我有一个网站,下面的url结构,我在nginx上运行

现在我的目标是使用nginx rewrite将其转换为下面的版本

其中1是页码,是动态的

获得干净url的确切规则是什么

除此之外,我还需要一个规则,以防有人给页面一个负值,它将自动重定向到页码的正值

现在我现有的配置如下

例如:

location  ~ /category.php$ {
   if ( $args ~ ^page=[-]*([0-9]+)&query=([\w]+)$ ) {
      set $pg $1;
      set $q  $2; 
      rewrite (.*)  /$q/$pg/? permanent;
   }
}

它没有工作,下面是我的错误日志,启用了nginx重写日志,;找不到aggri/india/325/index.php 2:没有这样的文件或目录显示完整的示例,您的请求。您好,我提到了我的完整nginx配置,以便更清晰地显示您重定向到aggri/india/325/index.php时的原始请求,并且您添加的规则是我键入的原始请求
location  ~ /category.php$ {
   if ( $args ~ ^page=[-]*([0-9]+)&query=([\w]+)$ ) {
      set $pg $1;
      set $q  $2; 
      rewrite (.*)  /$q/$pg/? permanent;
   }
}