Htaccess mod rewrite $ _GET on slash variables

I would like to rewrite the url from htaccess to the best readable url and use the $ _GET variable in PHP
I sometimes use a subdomain, so it should work with and without. Also, variables are not needed in the url. I use a maximum of 3 variables in the URL

The URL sub.mydomain.com/page/a/1/b/2/c/3 should lead to sub.mydomain.com/page.php?a=1&b=2&c=3 , and the url sub.mydomain.com/a/1/b/2/c/3 should lead to sub.mydomain.com/index.php?a=1&b=2&c=3 , where $_GET['a'] = 1

I came up with this after repeated searches and much.

 RewriteEngine on RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4&$5=$6&$7=$8 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3&$4=$5&$6=$7 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4&$5=$6 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3&$4=$5 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)/([^/]+)$ $1.domain.com/$2.php?$3=$4 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)/([^/]+)$ $1.domain.com/index.php?$2=$3 [QSA,NC] RewriteRule ([^/]+)\.domain.com/([^/]+)$ $1.domain.com/$2.php [L,QSA,NC] 

but what i get is a server error

I'm not so good at this, so maybe I'm watching something. Also I would like it to work with and without a slash at the end

Should I use a RewriteCond and / or set some parameters?

Thanks in advance.

+7
source share
1 answer

When using RewriteRule you do not include the domain name in the string. Also, first enable RewriteEngine. Like this:

 RewriteEngine On RewriteRule ^([^/]+)/([^/]+)$ index.php?$1=$2 RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)$ index.php?$1=$2&$3=$4 RewriteRule ^([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ index.php?$1=$2&$3=$4&$5=$6 

The first line will rewrite sub.mydomain.com/a/1 to sub.mydomain.com/page.php?a=1 , the second will rewrite sub.mydomain.com/a/1/b/2 to sub.mydomain.com/page.php?a=1&b=2 etc.

+7
source

All Articles