Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]"ładne" adresy url
Forum PHP.pl > Forum > Przedszkole
Star
Witam
Zauwazylem,że na nietórych stronach internetowych nie widnieje rozrzerzenie pliku ,tzn przykladowo adres zamiast tak: jakisadres.pl/costam/users.php
wyglada tak jakisadres.pl/costam/users

w jaki sposob mozna uzyskac taki efekt ? prosze o dokladne wytlumaczenie bo nie mam zielonego pojecia od czego zaczac zabawe z takimi adresami
KsaR
Cytat(Star @ 5.09.2015, 15:41:11 ) *
Witam
Zauwazylem,że na nietórych stronach internetowych nie widnieje rozrzerzenie pliku ,tzn przykladowo adres zamiast tak: jakisadres.pl/costam/users.php
wyglada tak jakisadres.pl/costam/users

w jaki sposob mozna uzyskac taki efekt ? prosze o dokladne wytlumaczenie bo nie mam zielonego pojecia od czego zaczac zabawe z takimi adresami


Musisz mieć plik o nazwie ".htaccess", o ile twój serwer to obsługuje.

A w nim:

Cytat(http://alexcican.com/post/how-to-remove-php-html-htm-extensions-with-htaccess/)
Kod
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]


Edit, ps. A działa to tak że z plików z rozszerzeniem .php skasuje to .php z linku. :-P (jednoczesnie będzie referencja do tego pliku).
Czyli mozna /index zamiast /index.php
Tomplus
Poczytaj sobie w internecie o Przyjaznych URLach/odnośnikach (URL Friendly), bo tak oficjalnie są nazywane.
Star
Sposob KsaR'a działa, tylko ze zarowno jak podam w adresie:
jakisadres.pl/xxx
jak i
jakisadres.pl/xxx.php

to jeden i drugi zadziała. Jest jakis sposob aby ten z rozrzezeniem .php nie zadziałał ?
nospor
Wywal to:
RewriteCond %{REQUEST_FILENAME} !-f

a na przyszlosc staraj sie zrozumiec te 3 linijki ktore dostajesz. Bezmyślne kopiowanie na dluzszą mete niczemu nie sluzy.
Star
dzieki za odpowiedz,postaram się dowiedziec wiecej na temat tego pliku.

A Twoja rada co do wyrzucenia tej linijki nie zadziałała niestety, teraz moj plik .htaccess wyglada tak :
RewriteEngine On

RewriteRule ^([^\.]+)$ $1.php [NC,L]


a dalej mozna wczytac strone z rozrzezeniem .php
nospor
Nie zwrocilem uwagi ze masz wykluczenie kropki...

Cos w ten desen ma byc
RewriteRule ^(.+)$ $1.php [NC,L]
Star
dzieki,poprawiłem ,ale teraz ,nie wiem czemu ,wyskoczył mi Internal Server Error
moze to byc spowodowane ,ze moj serwer nie obsluguje tej komendy ? piszę komendy ,ponieważ gdy uzyłem kodu podanego wczesniej przez KsaR to wszystko działało
Pyton_000
No można wczytywać, bo plik.php nie pasuje do wzorca więc puści go dalej, a że serwer go znajdzie to i zwróci.

Tak jak @nospor podał spowoduje że plik.php.php nie zostanie odnaleziony

Up.
Nic nowego tu nie ma, ew. * zamiast +
nospor
Cytat
Tak jak @nospor podał spowoduje że plik.php.php nie zostanie odnaleziony
Dokladnie. No ale skoro chcial by to dzialalo tez dla plik.php to ma smile.gif
Star
dziwne jest to ze ten blad wyskakuje jak wytne linijke ktora kazal wyciac nospor

taki kod działa poprawnie :
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ $1.php [NC,L]


tylko ze dalej wczytuje z .php


edit

ja własnie nie chcialem aby działało dla plik.php :-)
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.