Dear developers,
I have found a bug in http.c in version 2.0.1.
Line 726 is
if(regexec(&lstn->url_pat, request, 0, NULL, 0))
i.e. the request header line is checked
But in line 727 is
logmsg(LOG_WARNING, "bad URL \"%s\" from %s", url, inet_ntoa(from_host));
i.e. the URL is logged.
e.g. if there is a request line of
GET /abc.htm HTTP/1.0
The whole "GET /abc.htm HTTP/1.0" will be compared while
/abc.htm will be logged only.
This would cause a problem in CheckURL config. If I specify the CheckURL
as "^/abc.htm$", I would not be able to match, since the string to be
compared is "GET /abc.htm HTTP/1.0".
Yiu-chung Lee
|