l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2009 Apr 22 10:25

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Question related to Apache mod_rewrite and regularexpressions
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Question related to Apache mod_rewrite and regularexpressions

Harold, that worked perfectly! Thanks so much!!

In looking at the results, I was wondering if it's possible to "hide"
the resulting URL for SEO purposes? In other words, when the link is
to product-Another-Thing.php, the URL changes internally to
product.php?name=Another-Thing but it doesn't update in the location
string. I've slogged about with it this morning, but as usual, all
I've managed to do is break it. Any further ideas?

Thanks again,

-- Dave Spencer, PageWeavers

On Mon, Apr 20, 2009 at 3:36 PM, David Spencer <spencer@pageweavers.com>wrote:

> I've killed the better part of the morning and this afternon trying to
> figure out this use of Apache's mod_rewrite.

Welcome to mod_rewrite. There's a logging facility that can create a log of
which rules were tried, but it doesn't help in this case where you only have
one rule.

> RewriteEngine On
> RewriteRule ^/?product-([A-Za-z0-9-]+)\.php$ product.php?name=$1 [ R=301,L]

You did a gread job here, but ...

1) No spaces in the [] at the end of the line, so you want [R=301,L]

2) I found I needed to add this option also:
Options +SymLinksIfOwnerMatch

3) You almost certainly also want QSA (query string append), making it
[R=301,L,QSA] at the end of the line. This will add the name parameter to
whatever other parameters were sent, instead of dropping the original

    product-a.php?quantity=4 -> product.php?name=a&quantity=4

You can check Apache's error_log if this still isn't working for hints.

vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Appahost Applications
For a significant contribution towards our projector, and a generous donation to allow us to continue meeting at the Davis Library.