Это мой файл .htaccess:.htaccess многих параметров в MultiLang версии
AddHandler application/x-httpd-php56 .php
Options +FollowSymLinks
RewriteEngine On
RewriteBase/
RewriteCond %{QUERY_STRING} !lang=(de|en|es|fr|nl|pl|ru|se)
RewriteRule ^$/ [R=301,L]
RewriteRule ^(de|en|es|fr|nl|pl|ru|se)$ $1/ [R=301,L]
RewriteRule ^(de|en|es|fr|nl|pl|ru|se)/(.*)$/ $2?lang=$1&%{query_STRING} [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]*)$ /index.php?p=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]*)/([^/]*)$ /index.php?p=$1&id=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]*)/([^/]*)/([^/]*)$ /index.php?p=$1&g=$2&id=$3 [L]
Теперь основная версия без поддиректории языка работает идеально:
ganted.pl/category/example
$ _GET parmeters
Array ([p] => category [id] => example)
Проблема возникает в языковых версиях:
ganted.pl/en/category/example
$ _GET parmeters
Array ([p] => en [g] => category [id] => example)
Как я могу удалить код языка, чтобы не вмешиваться в параметры в $ _GET?
ganted.pl/en/category/example должен пройти следующее:
Array ([p] => category [g] => example)
не работает. Таким образом, я не могу передать третий параметр (id). – Jarek
@Jarek: У вас есть пример, когда вы хотите получить идентификатор и как выглядит URI? – Paladin
http://ganted.pl/ - без параметров | http://ganted.pl/category - [p] | http://ganted.pl/category/example [p] [g] | http://ganted.pl/category/example/4 [p] [g] [id] – Jarek