Alright, I give up. I just can’t quite wrap my mind around apache rewrites, I’ve looked through a lot of the stackoverflow suggestions and none seems to make sense to me.
So, I have a script that current renders content based on http://www.example.com/index.php?article=some-article-name
But, I want the user to think that page is www.example.com/section/some-article-name
I’ve tried using stuff like
# Turn on URL rewriting
RewriteEngine On
RewriteRule ^/section/([a-zA-Z0-9\-]+)$ index.php?article=$1
I discovered the answer thanks to the direction of all of these folks.
RewriteRule ^section/([a-zA-Z0-9]+)$ test.php?article=$1
RewriteRule ^section/([a-zA-Z0-9]+)/$ test.php?article=$1
You need both to handle 2 different types of requests, ones with a / at the end and those that don’t.
You may want a simpler rule like.
A name like
some-article-namewill fail because you won’t match the hyphen. If you want a limited regex try something like:This will match ASCII alphanumeric characters along with punctuation most likley to be in the name.
Either of these rules will fail if you have parameters on the incoming request.