Defect #187
closedUnintended behavior in .htaccess r934
0%
Description
I believe the head version of public/.htaccess has a bug causing the dispatch.cgi to have precedence over dispatch.fcgi
when both modules are installed because of the order of the RewriteRule directives.
<IfModule mod_fastcgi.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule> <IfModule mod_fcgid.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule> <IfModule mod_cgi.c> RewriteRule ^(.*)$ dispatch.cgi [QSA,L] </IfModule>
This will always cause the URL to be rewritten to dispatch.cgi whenever mod_cgi is installed. I assume that you would
likely want fcgi over cgi when available, so the cgi rewrite should move to the top of the list, as in:
<IfModule mod_cgi.c> RewriteRule ^(.*)$ dispatch.cgi [QSA,L] </IfModule> <IfModule mod_fastcgi.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule> <IfModule mod_fcgid.c> RewriteRule ^(.*)$ dispatch.fcgi [QSA,L] </IfModule>
I'm not sure if fastcgi or fcgid would be more preferred, but that order can also easily change.
Updated by Felix Schäfer over 14 years ago
- Status changed from New to Closed
My understanding of apache config is that the current version of .htaccess should use (if present and in this order): fastcgi, fcgid and cgi.
I'm closing this issue because of it's age, please open a new issue and relate it to this one if this still is a problem.