如何解决NGINX URL重写正则表达式模式不匹配
经过一番摆弄之后,我有了一些进步。
class ChoicesView(BaseListView):
paginate_by = 25
def __init__(self,**kwargs):
super().__init__(**kwargs)
self.object_list = None
self.term = None
def get(self,request,*args,**kwargs):
self.term = kwargs.get("term",request.GET.get("term",""))
self.object_list = self.get_queryset()
context = self.get_context_data()
return JsonResponse(
{
"results": [
{"id": value,"text": name}
for value,name in context["object_list"]
],"more": context["page_obj"].has_next(),}
)
def get_queryset(self):
return [(value,name) for value,name in self.queryset if self.term.lower() in name.lower()]
class LocationChoicesView(ChoicesView):
queryset = COUNTRY_CITY_CHOICES
日志返回
if ($query_string) {
rewrite /([^.]+)$ /$1.PHP$is_args$args break;
}
但是重写仍然没有发生。有任何线索吗?
我目前正在将PHP应用程序从Apache移植到Nginx。希望在URL重写方面获得帮助
我正在尝试将/ xxx?param = value重写为/xxx.PHP?param=value
2020/10/31 14:51:17 [notice] 442849#0: *1 "/([^.]+)$" matches "/course/dfdfdf/dfsdfdsf",client: 220.255.213.94,server: xxx.com,request: "GET /course/dfdfdf/dfsdfdsf?dsfdsf=xxx HTTP/1.1",host: "xxx.com'
此重写代码在服务器块中,因为子目录中也有此类模式需要捕获。
Nginx无法捕获此模式。有人可以建议吗?
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。