Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Useless mod_rewrite rule in the default silverStripe .htaccess ?


Go to End


2204 Views

Avatar
Myrdhin

Community Member, 70 Posts

10 November 2009 at 5:10am

Edited: 17/11/2009 1:25am

Hello,

In my .htaccess file, i have mod_rewrite rules :

  RewriteEngine On
  RewriteBase /

  RewriteCond %{REQUEST_URI} !(\.gif$)|(\.jpg$)|(\.png$)|(\.css$)|(\.js$) 

  RewriteCond %{REQUEST_URI} ^(.*)$
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule .* sapphire/main.php?url=%1&%{QUERY_STRING} [L]

It's OK, these default rules works. But, i've read in this page about Rewrite rules :

  A wrong assumption is that the conditions are processed before the pattern of the RewriteRule. But this is wrong. The processing order is as follows: 

    1 - The Pattern of the RewriteRule is checked first.
    ....

So, i'm wondering : is RewriteCond %{REQUEST_URI} ^(.*)$ usefull ? It seems to be almost the same as .* pattern of the RewriteRule.

Perhaps Could we write :

  RewriteEngine On
  RewriteBase /Tests_CMS/SilverStripe

  RewriteCond %{REQUEST_URI} !(\.gif$)|(\.jpg$)|(\.png$)|(\.css$)|(\.js$) 

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ sapphire/main.php?url=%1&%{QUERY_STRING} [L]

thanks for your explanations.