htaccess przepisywanie adresów url

htaccess przepisywanie adresów url
SM
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam,
na dzień dzisiejszy mam adresy typu:

http://moja-domena.pl/kategoria_produktu/nazwa_produktu/

zaznaczam że /kategoria_produktu/nazwa_produktu/ jest rzeczywistą ścieżką
chcę stworzyć unikalne adresy:

http://moja-domena.pl/produkt-nazwa_produktu.php

i w zasadzie wszystko jest ok:

Kopiuj
RewriteEngine on
RewriteBase /
RewriteRule ^produkt-([a-z_0-9\-\_]+)\.php$ /produkt.php [R=301,L]  

z tym że chciałbym żeby to przekierowanie przekazało do pliku produkt.php dwie zmienne: kategoria_produktu i nazwa_produktu, pozostając przy adresie w postaci /produkt-nazwa_produktu.php

nazwę produktu mogę pobrać sobie w pliku php chociaż by za pomocą $_SERVER['REQUEST_URI'],
zostaje tylko problem jak przekazać nazwę kategorii.
Macie jakieś pomysły na to ?

dzek69
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Rzeszów
0

Czyli chcesz mieć w linku tylko nazwę produktu, ale jakimś cudem chcesz przekazywać nazwę kategorii, której w linku nie będzie? wtf?
W bazie produkty i tak masz chyba powiązane z kategoriami, więc w sumie po co Ci kategoria w parametrze (której nie chcesz w URL, a więc przeczysz sam sobie), skoro możesz ją wybrać w kodzie?

KO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 39
0

Moim zdaniem chcesz zrobić rzecz niemożliwą.
Po adresie /produkt-nazwa_produktu.php w żadnym wypadku Apache nie może wnioskować o nazwie kategorii.
Możesz oczywiście w skrypcie PHP przeszukać (bazę lub pliki) w poszukiwaniu produktu o nazwie nazwa_produktu i otrzymać wtedy kategorię.
Ale żeby moduł mod_rewrite przekierował od razu do /nazwa_kategorii/nazwa_produktu/ to musi wiedzieć jaka ta nazwa jest, więc musi być częścią żądania HTTP.

SM
  • Rejestracja: dni
  • Ostatnio: dni
0

No i wszystko w tym temacie. Coś mi iskrzyło w głowie że tak się nie da tego zrobić ale lepiej zapytać. Myślałem że może da się to załatwić z uzyciem samego htaccessa bez dodatkowych zapytań do bazy.
Dzięki za odpowiedzi i pozdrawiam.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.