Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: .htaccess - przyjazne linki
Forum PHP.pl > Forum > Serwery WWW
tadek92
Witam!
Chce zrobić w .htaccess, aby link w postaci http://localhost/index.php?page=podstrona przedstawić jako http://localhost/podstrona

Nie wiem jak to zrobić.
Proszę o pomoc.
zimi
przejrzałeś chociaż jakiś kurs mod_rewrite i wyrażeń regularnych?

edit:
w pliku .htaccess piszesz
Kod
RewriteEngine On
RewriteRule jakis_regex index.php?page=$1

gdzie $1 to wartość wyłuskana przez regex-a
znajdź w necie kurs regex i mod_rewrite i przeczytaj, potem ponownie zajrzyj na forum...
tadek92
Już zrobiłem tak:
Kod
RewriteEngine On
RewriteRule ^(.*)$ index.php?page=$1 [QSA]

tylko jest jeden problem, nie działają style css.
Dlaczego?
zimi
bo każesz przepisać wszystko -> .*
musisz wyłączyć katalogi z plikami, css-ami, skryptami js itp
spróbuj
Kod
RewriteRule ^((?!(style|image|script)/).*)$ index.php?page=$1 [QSA]

to powoduję przypisaniem wszyskiego co nie zaczyna się od style/ image/ lub script/

edit: powinno powodować, pisane z pamięci
lukas0987
Aby style działały spróbuj umieścić w head

<base href="http://www.mojastrona.com/"/>
tadek92
Poradziłem już sobie z tym, wszystko działa jak powinno. .htaccess wygląda tak:
Kod
DirectoryIndex index.html index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteEngine On
RewriteRule ^(.*)$ index.php?page=$1 [QSA]
trylas
mam taki wpis w htaccess

CODE


Options +FollowSymlinks

RewriteEngine On
RewriteRule ^([^-]+).html$ artykuly.php?id=$1 [L]



niestety nic sie nie dzieje tzn na localhoscie tzn linki pozostaja tekie same
tzn localhost/www.fall.pl/artykul.php?id=zasady

wamp serwer / apache 2.28
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.