我一直试图解决这个问题。
这是我的设置
/www/index.php
/www/page.php
我想要一些SEO网址:
/www/page.php?pageId=45&catId=34
我的NGINX重写是
location / {
rewrite ^/([A-Za-z]+)/([A-Za-z]+)$ /page.php?pageId=$1&catId=$2;
}
但是如果尝试了网址site.com/1/23
- 会触发404.有人可以帮忙吗?我是否还可以重定向到该URL,以防有人直接尝试page.php ..
答案 0 :(得分:1)
正则表达式A-Za-z
仅匹配大写和小写字母。要与数字匹配,您应该在上面的正则表达式中添加0-9
,即
rewrite ^/([A-Za-z0-9]+)/([A-Za-z0-9]+)$ /page.php?pageId=$1&catId=$2;
有关演示和说明,请点击this regex101 page。