Forum Moderators: phranque
Because .* is the most nasty regex there is and should be avoided at all costs
.* pattern; either on its own like .* or (.*) $ anchoring like something(.*)$ or (something.*)$ but only where the pattern is captured as a backreference. .* at the beginning or in the middle of a longer pattern is always asking for trouble as it causes the parser to attempt thousands of "back off and retry" trial matches. .* on the end of a pattern like something.*$ where the .* pattern is not being captured is also redundant and the .*$ part can simply be deleted.
So instead of it looking like:
RewriteRule .* - [F]
Would this would be more efficient:
RewriteRule .? - [F]
In this specific situation it doesn't make any particular difference, because neither anchors nor captures are involved. Presumably the Rule is preceded by Conditions (IP, UA, Referer or whatnot) that specify who is to get the door slammed in their face, since otherwise it would mean "Don't let anyone in here ever" :)