Czy można skonfigurować Apache, aby nie wyświetlać rozszerzenia pliku?umieścić linki bez rozszerzenia pliku (.php)
Na przykład: Załóżmy, że mam domain.com/page.php
, ale chcę mieć adres URL w postaci domain.com/page
.
Jakieś pomysły?
Czy można skonfigurować Apache, aby nie wyświetlać rozszerzenia pliku?umieścić linki bez rozszerzenia pliku (.php)
Na przykład: Załóżmy, że mam domain.com/page.php
, ale chcę mieć adres URL w postaci domain.com/page
.
Jakieś pomysły?
ten nazywany jest przepisywanie URL. Musiałem go użyć po raz pierwszy ostatnio i użyłem this tutorial, aby się tego nauczyć, mam nadzieję, że będzie on również świetny:
To jest naprawdę proste. Po prostu utwórz plik .htaccess i umieść go w katalogu głównym, a następnie możesz zmienić adres URL na własny.
Chcesz funkcji serwera internetowego o nazwie przepisywanie URL - każda aplikacja serwera WWW (apache, IIS, nginx) obsługuje to. Jak sama nazwa wskazuje, pobiera żądany adres URL i przepisuje go na określony format.
Na stronie www dostępnych jest wiele przewodników, nawet jeśli korzystasz z hostingu współdzielonego, możesz nadal dodawać/modyfikować plik .htaccess, aby to zrobić.
umieścić to jest plik .htaccess
#turn on url rewriting
RewriteEngine on
#remove the need for .php extention
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
To pozwala na dostęp do plików .php bez rozszerzenia, więc linki powinien przeczytać
href="/somepage"
a ten skieruje do
href="/somepage.php"
Istnieje również MultiViews
jako opcja konfiguracji vhost lub .htaccess. Zobacz http://httpd.apache.org/docs/2.2/content-negotiation.html#multiviews
Od tej strony:
Efekt MultiViews jest następująca: jeśli serwer otrzyma wniosek o/some/dir/foo, jeśli/niektóre/dir umożliwiło MultiViews i/niektóre/dir/foo nie istnieje, a następnie serwer czyta katalog szukający plików o nazwie foo. * i skutecznie podrabia mapę typów, która nazywa wszystkie te pliki, przypisując im te same typy mediów i kodowania treści, jakie miałaby, gdyby klient poprosił o jeden z nich po imieniu. Następnie wybiera najlepsze dopasowanie do wymagań klienta.
Multiviews może być dość irytujące i przeszkadzać w normalnych zasadach mod_rewrite, jeśli wybór nazw plików i nadpisywanie wzorców zachodzi na siebie. –
Bardzo prawdziwe. Używaj ostrożnie. –
Dodałem MultiViews do mojego vhosta przez 2 dni. Nie mogłem ustalić, dlaczego mój adres URL żądania czyszczenia nie działa ...Dzięki @TheGingerDog –
Put to Twój plik .htaccess
RewriteEngine On
RewriteRule ^page?$ page.php
<a href="page">page</a>
podziękowania dla wszystkich !! – Braggae
@Braggae Serdecznie witamy, * okrzyki *. –