Skocz do zawartości

Kłopot z prostym przekierowaniem htaccess


maciek257

Rekomendowane odpowiedzi

Dzień dobry, 

Posiadam portal ogłoszeniowy, w którym przejście do kategorii skutkuje otworzeniem adresu:

mojadomena.pl/kategoria?id=NAZWA-KATEGORII

Dzięki przekierowaniu .htaccess:

 

RewriteRule ^kategoria/(.*)?$ /kategoria?id=$1
 

Uzyskałem taki adres:

mojadomena.pl/kategoria/NAZWA-KATEGORII
 

Za wszelką cenę chciałby osiągnąć adres:

mojadomena.pl/NAZWA-KATEGORII
 

Dla ułatwienia przebudowałem nieco kod strony i do kategorii można dostać się również poprzez adres:

mojadomena.pl/?id=NAZWA-KATEGORII
 

Niestety w żaden sposób nie jestem w stanie uzyskać pożądanego adresu. 

W ostatnim przypadku to właściwie tylko pozbycie się "?id=". 

Od 2 dni próbuje różnych przekierowań znalezionych w internecie i nic, cały czas błąd 404. 

Będę wdzięczny za wszelakie podpowiedzi.

Z góry dziękuje i pozdrawiam.

 

Odnośnik do komentarza
Udostępnij na innych stronach

Dziękuję bardzo za odpowiedź, niestety nadal błąd 404 (po wyczyszczeniu przeglądarki również).

 

Podam może fragment mojego .htacces odpowiedzialnego za wszystkie przekierowania:

RewriteEngine on
Options FollowSymLinks

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([A-Za-z0-9-_]+)/?$ $1.php [QSA]

RewriteCond %{HTTP_HOST} ^oglo24.pl$ [NC]
RewriteRule ^(.*)$ https://www.oglo24.pl/$1 [R=301,L]

RewriteRule ^ogloszenie/(.*)?$ /ogloszenie?id=$1
RewriteRule ^kategoria/(.*)?$ /kategoria?id=$1

Ostatnią linijkę zastępuje zaproponowanym rozwiązaniem, ale niestety 404.

Odnośnik do komentarza
Udostępnij na innych stronach

Czyli oryginalny adres miałby wyglądać następująco?

mojadomena.pl/id=NAZWA-KATEGORII

To chyba przeczy zasadom działania URL.

 

W przypadku przejścia z adresu mojadomena.pl/karegoria?id=NAZWA-KATEGORII do mojadomena.pl/kategoria/NAZWA-KATEGORII wszystko działa ok i znak '?' nie stanowi najmniejszego problemu.

 

Nie mam pomysłu jak osiągnąć swój cel.

Odnośnik do komentarza
Udostępnij na innych stronach


Nie mam pomysłu jak osiągnąć swój cel.
A co w tym za trudność ? Przez mechanizm rewritte przekazujesz parametry wywołania które normanie były by w ziennych:
/ogloszenie?id=$1  

Poza tym wieloznacznosć

 

(.*)

nie jest dobrym pomysłem na dopasowanie.

 

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Po to są wyrażnia regularne by dopasować dane urle do wymaganych akcji i parametrów takie jakie są potrzebne i nuc więc. Ty robisz to na chybil trafił.

--

w danym pliku PHP na który wskazuje przekierowanie wyświetl zmienne GET

print_r($_GET);

zobaczysz co za kwiatki idą :]

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Zwróciło mi:

Array ( [id] => nazwa-kategorii )

Czy mógłby ktoś za opłatą napisać mi tę linijkę kodu, która spowodowała by przekierowanie:

domena.pl/kategoria?id=NAZWA-KATEGORII -> domena.pl/NAZWA-KATEGORII

lub:

domena.pl/?id=NAZWA-KATEGORII -> domena.pl/NAZWA-KATEGORII

a przy okazji nie sparaliżowała działania reszty serwisu?

 

Jeśli tak proszę o PW z numerem konta i kwotą. Cały mój htaccess w 3 poście.

Pozdrawiam.

Odnośnik do komentarza
Udostępnij na innych stronach

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności