Nginx重写Apache重写的URL替换

时间:2011-07-26 04:02:22

标签: apache url url-rewriting nginx

如何为以下内容转换 nginx 等效的网址重写:

RewriteRule ^read/([0-9]+)/?$ /read/?u=$1 [QSA,L]

2 个答案:

答案 0 :(得分:0)

尝试以下内容:

rewrite ^read/([0-9]+)/$ /read/?u=$1 permanent;

IfIsEvil - 因此直接重写选项。

答案 1 :(得分:0)

您可以通过以下两种方式执行此操作:

# the ?<u> assigns the capture to $u.  Some older pcres need ?P<u>
location ^/read/(?<u>[0-9]+)/?$ {
  rewrite ^ /read/?u=$u last;
}

或只是重写:

rewrite ^/read/([0-9]+)/?$ /read/?u=$1 last;

nginx默认会附加查询字符串(您可以通过在重写目标末尾添加另一个来禁用该行为)。