2016-05-18 11 views
0

Hallo verwende ich .htaccess für URL-Rewrite und Spracherkennung..htaccess Rewrite Sprache mit get-ID

Ich habe domain.com/en/page übersetzt domain.com/page.php?lang=en es toll funktioniert, aber wenn ich eine dritte param auf die URL hinzufügen, ich kann die lang

bekommen

ex domain.com/en/page/44 44 ist die ID

meine .htaccess Regeln sind:

RewriteRule saints/?([0-9-]+) saint.php?id=$1 
RewriteRule photos-and-videos/?([0-9-]+) category.php?id=$1 
RewriteRule various/?([0-9-]+) article.php?id=$1 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 

RewriteRule ^(en|el)/(.*)$ $2?lang=$1 [QSA,L] 

Antwort

0

Ich habe die drei Regeln

RewriteRule saints/?([0-9-]+) saint.php?id=$1 
RewriteRule photos-and-videos/?([0-9-]+) category.php?id=$1 
RewriteRule various/?([0-9-]+) article.php?id=$1 

zu

RewriteRule ^(en|el)/saints/?([0-9-]+)$ saint.php?lang=$1&id=$2 [QSA,L] 
RewriteRule ^(en|el)/photos-and-videos/?([0-9-]+)$ category.php?lang=$1&id=$2 [QSA,L] 
RewriteRule ^(en|el)/various/?([0-9-]+)$ article.php?lang=$1&id=$2 [QSA,L] 

und es funktioniert großen

0

einen zusätzlichen perameter hinzuzufügen Sie diese Regel verwenden können:

RewriteRule ^(en|el)/(.+)/?(.*)?$ $2?lang=$1&id=$3 [QSA,L] 

Der 3. perameter in der Regel über optional ist, so /en/Seite oder /en/page/foo beide funktionieren würden.

Neu geordnete/feste Regeln

RewriteCond %{REQUEST_FILENAME}.php -f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 
RewriteRule ^(en|el)/(.+)/?(.*)?$ $2?lang=$1&id=$3 [QSA,L] 
RewriteRule saints/?([0-9-]+) saint.php?id=$1 
RewriteRule photos-and-videos/?([0-9-]+) category.php?id=$1 
RewriteRule various/?([0-9-]+) article.php?id=$1 
+0

Vielen Dank für Ihre Antwort, aber dies tut nicht arbeiten. Ich denke, es hat mit den ersten 4 Regeln zu tun. – Kinggeov

+0

Es verursacht eine Schleife el/Heiligen? Lang = El & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = & lang = el & id = – Kinggeov

+0

Ihre erste Antwort hat mir sehr geholfen. Vielen Dank – Kinggeov