在重写规则nginx中添加异常



基本上我有这个重写规则:

location / {
rewrite ^/([A-Za-z]+)/?$ /index.php?goto=$1 break;
rewrite ^/page/([A-Za-z]+)/?$ /index.php?goto=$1&page=$2 break;
}

并且像魅力一样工作。问题是我有一个名为 images 的文件夹(在该位置的同一目录中,在根目录中(,我想避免将其包含在重写规则中。

当我访问 domain.com/images 时,它给了我 404 未找到错误(因为在重写规则中进行了解释(,但是如果我添加索引.php在末尾(图像文件夹的索引(它可以工作。

有什么想法可以解决这个问题吗?

这不是nginx配置的问题,因为没有重写规则 domain.com/images 可以毫无问题地工作。

尝试添加负面的前瞻以排除正则表达式中的/images

location / {
rewrite ^/(?!images)([A-Za-z]+)/?$ /index.php?goto=$1 break;
rewrite ^/page/([A-Za-z]+)/?$ /index.php?goto=$1&page=$2 break;
}

最新更新