简单的nginx重写为干净的网址

时间:2011-12-07 22:40:02

标签: url-rewriting nginx

我主要使用标准的nginx设置并使用以下代码重写:

rewrite ^/account/credit$ /account/credit.php$1 last;
rewrite ^/account/credit\/$ //account/credit.php$1 last;

基本上,这两行确保以下地址都被识别:

www.example.com/account/credit
www.example.com/account/credit/

有没有办法把它放在一个陈述中,或者更优雅地做到这一点?

我正在考虑像

这样的事情
rewrite ^/account/credit(\/)?$ /account/credit.php$1 last;

但这不起作用,因为它在向地址末尾添加/时会查看错误的级别。 //看起来有点不雅。

这就是位置:

location / {
  try_files $uri $uri/ /index.php;
}

1 个答案:

答案 0 :(得分:1)

将此添加到您的conf:

location ^~ /account/credit {
    rewrite ^ /account/credit.php last;
}