Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Plik .htaccess do zrobienia eleganckich url-i
Forum PHP.pl > Forum > Gotowe rozwiązania
blackstone
Na serwerze xampp próbowałem zrobić na podstawie danych z netu skrypt z "ładnymi" adresami czyli np żeby adres localhost/adresy/index.php?strona=test&kat=testowa wyglądała w ten sposób localhost/adresy/test/testowa/ ale mi nie wychodzi. Co ciekawe, na tym samym serwerze mam folder z frameworkiem codeigniter i tam używanie "ładnych" adresów działa na wzorowo.

Mam folder adresy w którym jestem plik index.php ( który prawidłowo przechwytuje i pokazuje zmienne get o podanych nazwach ) oraz plik .htaccess w którym wpisywane były następujące zawartości

" RewriteEngine on

RewriteRule ^/?$ index.php?strona=test&kat=testowa
RewriteRule ^([^/\.]+)/^([^/\.]+).html?$ index.php?strona=$2&kat=$1

"

A po wykasowaniu tego wstawiłem z jednej strony

"RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z-_0-9]+)/([a-zA-Z-_0-9]+)/?$ index.php?strona=$1&kat=$2 [L]
RewriteRule ^([a-zA-Z-_0-9]+)/?$ index.php?strona=$1 [L]

"

Sprawdzałem także plik konfiguracyjny serwera by linijka LoadModule rewrite_module modules/mod_rewrite.so nie miała na początku # .

Niestety serwer pokazuje mi błąd 500 , i informuje że jest przeciązony albo napotkał błąd w skrypcie CGI.



Ma ktoś jakieś rozwiązanie tego problemu ?
hankos0
Widzę, że nikt z "wyjadaczy" nie odpisuje, spróbuj tak:

RewriteEngine On
RewriteRule ^(.+)/$ index.php?strona=$1&kat=$2 [L]
RewriteRule ^(.+)/$ index.php?strona=$1 [L]
trzczy
Plik .htaccess umieszczony w .../adresy/

[APACHE] pobierz, plaintext
  1. RewriteEngine On
  2. RewriteRule test/testowa/? index.php?strona=test&kat=testowa
[APACHE] pobierz, plaintext


http://htaccess.mwl.be?share=74299ded-d935...16-d737ca2acd44

@hankos0 żeby była zmienna $2, to muszą być przynajmniej 2 wyrażenia w nawiasach.
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-2024 Invision Power Services, Inc.