Skocz do zawartości

Przekierowanie nieistniejących podstron w pliku htaccess


mariansc

Rekomendowane odpowiedzi

Mam pewien problem z przekierowaniami nieistniejących podstron na istniejące zamienniki z przyjaznymi url'ami w stronie, która jest subdomeną domeny głównej.

Strona w poprzedniej wersji wyglądała ogólnie w następujący sposób:

index.php - strona główna (format linku: https://www.subdomena.domena.pl)

podstrona.php - podstrona z funkcją switch, na której podmieniały się w php treści głównych podstron serwisu (wyświetlany link np cennika miał format: https://www.subdomena.domena.pl/podstrona.php?p=cennik)

landing-page1.php, landing-page2.php itp. - landing page strony dla reklamy adwords, pliki były kopiami strony głównej i znajdowały się w folderze głównym strony obok pliku index.php

Stroną już się zająłem i odpowiednio ją przerobiłem zarówno w html/css jak i kodzie php dzięki czemu aktualnie strona posiada następujący system odnośników:

index.php - strona główna, na której użyłem funkcji switch dzięki czemu zarówno podstrony jak i landing-page ukazują się w jednym szablonie, z podmianą jedynie określonych miejsc na stronie + przyjazne url'e.

w pliku htaccess utworzyłem następujące reguły:

RewriteEngine on
RewriteBase /subdomena/

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

RewriteRule ^cennik$ ?p=cennik [L]
RewriteRule ^podstrona1$ ?p=podstrona1 [L]

Jak widać w powyższym kodzie system odnośników posiadał format "?p=", który zastąpiłem przyjaznymi url'ami.

Mój problem jest następujący:

stare podstrony landing-page są zaindeksowane już w google i dzięki temu jakość słów kluczowych w systemie adwords jest wysoka. Chciałbym aby poszczególne podstrony będące plikami landing-page.php można było przekierować na przyjazne url'e tak aby plik landing-page.php przekierowany został na podstronę landing-page.

niestety gdy wklejam poniższą regułę dla landing-page.php nie przekierowuje mi jej w ogóle na podany adres docelowy.

RewriteRule ^/landing-page$ /landing-page.php [R=301,NC]

Poniższe reguły również nie działają (sprawdzane każde osobno):

RewriteRule ^/landing-page$ /landing-page.php [L]

RewriteRule ^/landing-page.php$ /landing-page [L]

RewriteRule ^landing-page.php$ landing-page [L]

Czy jest tutaj może ktoś, kto mógłby pomóc mi z przekierowaniem?

Ponadto w poprzedniej wersji strony format niektórych linków był "podstrona.php?p=cennik"

W jaki sposób mogę przekierować takie odnośniki na przyjazny gotowy działający url "cennik" ?

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

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

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • 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