RewriteRule ^(.*\.map)\??(.*)$ /cgi-bin/mapserv?map=/var/www/html/map/$1&$2 [PT] [perdir /var/www/html/map/] strip per-dir prefix: /var/www/html/map/tut.map -> tut.map [perdir /var/www/html/map/] applying pattern '^(.*\.map)\??(.*)$' to uri 'tut.map' [perdir /var/www/html/map/] rewrite 'tut.map' -> '/cgi-bin/mapserv?map=/var/www/html/map/tut.map&' split uri=/cgi-bin/mapserv?map=/var/www/html/map/tut.map& -> uri=/cgi-bin/mapserv, args=map=/var/www/html/map/tut.map [perdir /var/www/html/map/] forcing '/cgi-bin/mapserv' to get passed through to next API URI-to-filename handler [perdir /var/www/html/map/] internal redirect with /cgi-bin/mapserv [INTERNAL REDIRECT]