基本上我有这个重写规则:
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;
}