mam następujące reguły mod_rewrite:
Kod
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+).html$ index.php?section=$1&sub=$2
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+).html$ index.php?section=$1&sub=$2
ta reguła działa ok dla adresu np: 1,2.html
zwraca mi section=1 i sub=2
jest ok
Kod
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+),([^/]+).html$ index.php?section=$1&sub=$2&lang=$3
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+),([^/]+).html$ index.php?section=$1&sub=$2&lang=$3
ta reguła działa ok dla adresu np: 1,2,en.html
zwraca mi section=1 i sub=2 i lang=en
jest ok
ale jak chce połączyć obie reguły:
Kod
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+).html$ index.php?section=$1&sub=$2
RewriteRule ^([^/]+),([^/]+),([^/]+).html$ index.php?section=$1&sub=$2&lang=$3
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+),([^/]+).html$ index.php?section=$1&sub=$2
RewriteRule ^([^/]+),([^/]+),([^/]+).html$ index.php?section=$1&sub=$2&lang=$3
chciałbym aby jeśli są 2 parametry (url: 1,2.html) to aby wykonywała się pierwsza reguła a jeśli są 3 parametry to druga (1,2,en.html)
niestety, wykonuje się tylko pierwsza i parametr lang nie jest przekazywany
kombinowałem i myślałem o takim adresie do pierwszej reguły: 1,2.html?lang=en ale wtedy metodą GET nie mogę pobrać wartości lang, zwykłe
<?php ?>
nie działa, nic nie zwraca
proszę o pomoc w rozwiązaniu tego problemu, albo jak dobrać się do ?lang=en a super by było o jakąś wskazówkę jak poradzić sobie z mod_rewrite aby rozróżniał moduł którą metodę wykonać w zależności od ilości parametrów w adresie
pozdrawiam,
Łukasz