I use the following rewrite rule to behind the scenes rewrite addresses such as /pageName and /pageName/ to index.php?page=pageName. It works perfectly except when the pageName contains a -.
RewriteRule ^(w+)$ /index.php?page=$1
RewriteRule ^(w+)/$ /index.php?page=$1
How can I get these rewrite rules to accept any input (or at least input containing A-Z, 1-9, and -‘s.
use a character class. For example, if you want “word” characters and dashes, try:
Also, you don’t need two rules. Use `?` to make the trailing slash optional:
RewriteRule ^([-w]+)/?$ /index.php?page=$1
You must be logged in to reply to this topic.