Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [htaccess]statyczna strona i "usuwanie" rozszerzenia
Forum PHP.pl > Forum > Przedszkole
lukaz
Witam!

Mam małą statyczną stronę, opartą o pliki php, chciałbym aby nie pokazywało się rozszerzenie pliku

żeby zamiast np. moja_domena.pl/kontakt.php pokazał się adres moja_domena.pl/kontakt
Rafal Filipek
Kod
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
kefirek
Tworzysz plik .htaccess z taką zawartością
Kod
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^/(.*)$
RewriteRule ^kontakt$ kontakt.php [N]

Potem na początku swojego plik dajesz taki kod
  1. <?php
  2. function han($name){
  3. global $hand;
  4. if(!empty($name)){
  5. $hand = "$output = $name($output);";
  6. }
  7. }
  8.  
  9. function url($link) {
  10. if(!substr_count($_SERVER['REQUEST_URI'],"administration")){
  11. $link = preg_replace('#kontakt.php#si', 'kontakt', $link);        
  12. }  
  13. return $link;
  14. }
  15.  
  16. han("url");
  17. ?>

I masz taki adres moja_domena.pl/kontakt

Reszte adresów dodajesz podobnie czyli w pliku .htaccess dodajesz np
Kod
RewriteRule ^test$ test.php [N]


I w funkcji
  1. <?php
  2. $link = preg_replace('#test.php#si', 'test', $link);
  3. ?>
lukaz
1. który sposób jest lepszy?
2. Jak w tym sposobie który podał Rafal Filipek zrobić aby żeby zamiast np. moja_domena.pl/123.php pokazał się adres moja_domena.pl/kontakt

mogę liczyć na odpowiedź? smile.gif
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.