Chciałbym aby mój link wyglądał tak: mojastrona.pl/strona
A w rzeczywistości wyświetlał się plik mojastrona.pl/pages.php?name=strona
Mój kod wygląda tak:
Kod
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ pages.php?name=$1 [L]
RewriteRule ^(.*)$ pages.php?name=$1 [L]
i niestety nie działa... $_GET['name'] przyjmuje jako wartość ciąg "pages.php", nie mam pojęcia dlaczego.
Natomiast gdy zmienię kod na:
Kod
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\.html$ pages.php?name=$1 [L]
RewriteRule ^(.*)\.html$ pages.php?name=$1 [L]
Wszystko jest tak jak powinno być. Tyle, że wolałbym jednak mojastrona.pl/strona, a nie mojastrona.pl/strona.html. Co mogłem zrobić źle?
EDIT:
Zauważyłem jeszcze, że jeśli zrobię plik o nazwie strona.php i zmienię kod na:
Kod
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)\.html$ pages.php?name=$1 [L]
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)\.html$ pages.php?name=$1 [L]
to $_GET['name'] zwraca "strona", czyli tak jak powinien. Ale to też bez sensu, żadne to rozwiązanie... Już całkiem powariowałem i nic nie rozumiem.