.htaccess - dwie te same (podobne nazwy)

0
RewriteRule ^members/$ members.php [L]
RewriteRule ^members/([0-9]{1,6})$ /member.php?id=$1 [L]
RewriteRule ^mmm/$ members.php [L]
RewriteRule ^zzz/([0-9]{1,6})$ /member.php?id=$1 [L]

Witam

u mnie kod na apachu działa oki ale na OVH niestety coś nie do końca działa jak trzeba i nie mogę zrozumieć dlaczego chodzi mi mianowicie o 1 i 2 linie kodu 3 i 4 jest czysto testowa

po wprowadzeniu w pasku .../members/ czy .../members/1 zawsze przesyła mnie do tego pierwszego nawet nie wywala 404 co może być nie tak? a w 4 linii jest oki ale warunek jest taki ze nie może być tej samej nazwy? co polecacie a może zle napisalem ów procedure?

0

odp. podobne nazewnictwo

RewriteRule ^members$ /_members.php?id=$1 [L]
RewriteRule ^members/$ /_members.php?id=$1 [L]
RewriteRule ^members/([0-9]{1,6})$ /_members.php?id=$1 [L]
RewriteRule ^members$ /members.php?id=$1 [L]
RewriteRule ^members/$ /members.php?id=$1 [L]
RewriteRule ^members/([0-9]{1,6})$ /members.php?id=$1 [L]
0

nie znam konfiguracji OVH, ale istnieje wtyczka mod_negotiation która posiada opcję MultiViews, która w przypadku zapytań bez podania rozszerzenia, szuka plików z taką samą nazwą i innym rozszerzeniem (według konfiguracji i nagłówków przesłanych przez przeglądarkę)

moim zdaniem te regułki w ogóle Ci nie działają, a wtyczka znajduje plik members.php i Ci go serwuje, tak samo jak możliwe jest napisanie na przykład:

http://example.com/index.php/dowolny/tekst/tutaj/

Spróbuj wyłączyć dodając do .htaccess:

Options -MultiViews

1 użytkowników online, w tym zalogowanych: 0, gości: 1