views:

207

answers:

1

Hi folks..

My previous server working fine.. Today I changed new server and getting RewriteRule cannot compile regular expression on my htaccess.

How to fix this line.

RewriteRule ^category/([0-9]+)(?:/([^/]+)(?:/([^/]+))?)(?:/([^/]+)(?:/([^/]+))?)?/$ ./category.php?pid=$1&catname=$2&page=$3 [L]

Let me know :)

+3  A: 

You are probably using a different Apache version with a different regular expression engine. The Apache versions since 1.3 use POSIX ERE while the versions since 2.0 use PCRE. And only PCRE support the non-capturing group (?:expr).

So try a pattern without them:

RewriteRule ^category/([0-9]+)(/([^/]+)(/([^/]+))?)(/([^/]+)(/([^/]+))?)?/$ ./category.php?pid=$1&catname=$3&page=$5 [L]
Gumbo
wow! thank gumbo.
bob