Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: slash na końcu
Forum PHP.pl > Forum > Serwery WWW > Apache
jaas
Hej, jaką dopisać do poniższego regułę dodającą końcowy slash do adresu...?

Options FollowSymLinks
RewriteEngine On
# przekierowanie dla URLa z www na bez www
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.nazwa.pl$ [NC]
RewriteRule ^(.*)$ http://nazwa.pl/$1 [R=301,L]

# przekierowanie z nazwa.pl/index.php?strona=cos - na nazwa.pl/cos
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?strona=$1 [L,QSA]

Np. cóś takiego poniżej, wepchnięte pomiędzy regułki powyżej dopisuje co prawda końcowy ukośnik, ale jednocześnie wyskakuje błąd 404

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/)$
RewriteRule (.*)([^/])$ http://nazwa.pl/$1$2/ [R=301,L]

Nie potrafię sobie z tym poradzić.
Asmox
Znalazłem stronkę o przyjaznych linkach: http://www.northpole.pl/przyjazne-linki/
A w niej taki kawałek:
Kod
RewriteEngine on
DirectoryIndex index.php
RewriteBase /url-test/
RewriteRule ^([a-zA-Z-_0-9]+)/$ index.php?id=$1

Zresztą te Twoje atomy [tak to się chyba nazywało, a jak się pomyliłem to chodzi mi o: (.*)] są 2 po prawej, a 1 po lewej. Jeżeli to jest celowe to ok, ja się tak dobrze nie znam na apachu, ale jeśli jednak to pomyłka, to ja bym proponował coś takiego mniej-więcej:
Kod
RewriteRule ^(a-zA-Z0-9)+/(a-zA-Z0-9)+$ index.php?a=$1&b=$2
jaas
Dziękuję za sugestie i za stronkę o "przyjaznych linkach", która wyjaśnia podstawowe kwestie i podaje przykłady na których można budować, tak więc już chyba wiem jak to zrobić i co zmienić w samej strukturze... pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.