Forum Moderators: phranque

Message Too Old, No Replies

rewritereule

Exclude certian files

         

gosman

11:46 am on Mar 31, 2006 (gmt 0)

10+ Year Member



I have the following in a .htaccess

rewriterule ^directory/(.*)-widget.htm$ /cms/page.php?GROUP_ID=directory&PID1=$1

This basiclly rewrites /directory/placename-widget.htm to /cms/page.php?GROUP_ID=directory&PID1=placename

This works fine however I have some static pages in the directory in the following format which I don't want rewriiten.

/directory/placename_a-widget.htm
/directory/placename_b-widget.htm

I have tried the following but it gives an Internal Server Error as I think it just keeps looping.

rewriterule ^directory/placename_(.*)-widget.htm$ /directory/placename_$1-widget.htm
rewriterule ^directory/(.*)-widget.htm$ /cms/page.php?GROUP_ID=directory&PID1=$1

Is there a way of rewrting certain urls while ignoring others?

Thanks in adavance.

gosman

11:54 am on Mar 31, 2006 (gmt 0)

10+ Year Member



Managed to figure it out.

rewriterule ^directory/placename_(.*)-widget.htm$ /directory/placename_$1-widget.htm - [PT]
rewriterule ^directory/(.*)-widget.htm$ /cms/page.php?GROUP_ID=directory&PID1=$1

This seems to do the trick.

extras

3:28 pm on Mar 31, 2006 (gmt 0)

10+ Year Member



hmmm... I'm just curious.

What is this rule supposed to be doing?
Isn't it giving 500 error?
rewriterule ^directory/placename_(.*)-widget.htm$ /directory/placename_$1-widget.htm - [PT]

gosman

4:02 pm on Mar 31, 2006 (gmt 0)

10+ Year Member



Hi Extras.

Here's the 2 lines from the .htaccess and it works fine.

rewriterule ^directory/placename_(.*)-widget.htm$ - [PT]
rewriterule ^directory/(.*)-widget.htm$ /cms/page.php?GROUP_ID=placename&PID1=$1

extras

11:51 pm on Mar 31, 2006 (gmt 0)

10+ Year Member



Thank you.
Now, I understand that you just copied wrong code in the previous post.