I have a problem with a RewriteRule where it appears to be over-binding in the REGEX:
RewriteRule ([0-9]{4,6}(?:-[0-9]{1,2})?\.jpg)$ /cgi-bin/logo-image.pl?image=$1 [L,PT]
What it should do is bind a 4-6 digit number, followed by an optional
- and
a 1-2 digit number, and finally .jpg
, at the end of the URL, and send them as a query string to the backend. It works fine unless there is another 4-6 digit number in the URL, e.g.,
https://site.url/images-sold/foo-bar-498-24340-1.jpg
works, calling /cgi-bin/logo-image.pl?image=24340-1.jpg
, but
https://site.url/images-sold/foo-bar-49899-24340-1.jpg
calls /cgi-bin/logo-image.pl?image=49899-24340-1.jpg
.
I've tried as 2 seperate regexes, and gotten the same response
RewriteRule ([0-9]{4,6})(-[0-9]{1,2})?\.jpg$ /cgi-bin/logo-image.pl?image=$1$2.jpg [L,PT]
I verified the regex as valid PCRE and tested as best I can with the htaccess tester here https://htaccess.madewithlove.be/
but cannot seem to figure it out
Aaron
apache version: 2.2.15-69
OS: Centos 6.10