Search code examples
.htaccessmod-rewriteurl-rewriting

Using multiple rewrite rules


i'm trying to create multiple rewrite rules to make friendly URL but what i did, makes my website throw error 500.

I've tried this but can't seem to make it work.

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*) /index.php?category=$1 [L]
RewriteRule ^(.*)/(.*) /index.php?category=$1&subcategory=$2 [L]
RewriteRule ^(.*)/(.*)/(.*) /index.php?category=$1&subcategory=$2&userid=$3 [L]

What i need is basically to make this urls work: domain.com/GetAnnouncements as domain.com/index.php?category=GetAnnouncements
domain.com/Persona/GetAchievements/2 as domain.com/index.php?category=Persona&subcategory=GetAchievements&userid=2
and there also should be third option that works 'in between' without 3rd parameter which is &userid=2


Solution

  • After some more googling and consulting with my friend we came to this solution which works:

    Options +FollowSymLinks
    RewriteEngine On
    
    RewriteRule ^(.*)/(.*)/(.*)$ index.php?category=$1&subcategory=$2&userid=$3 [L,QSA]
    RewriteRule ^(.*)/(.*)$ index.php?category=$1&subcategory=$2 [L,QSA]
    RewriteRule ^(.*)$ index.php?category=$1 [L,QSA]
    

    Thank you everyone who tried to help!