Skocz do zawartości

Problem z .htaccess i mod_rewrite


hcuzrb

Rekomendowane odpowiedzi

Mam problem z napisaniem poprawnych regul w .htaccess - albo dziala czesc rzeczy, albo nic. Bardzo prosze o pomoc i wskazowki, dla poczatkujacej osoby, ktora dopiero sie uczy.

Musze zrobic 3 rodzaje przekierowan:

1. index.php?name=strona na strona.html
2. news.php?news=10&name=tytul-newsa na news/tytul-newsa.html
3. https://www.adresstrony.pl/ssl/strona.php na ktores z tych (nie ma znaczenia ktore, wybiore to ktore najprosciej zrobic):
- https://www.adresstrony.pl/strona.html
- https://ssl.adresstrony.pl/strona.html
- https://www.adresstrony.pl/ssl/strona.html

Przy okazji jeszcze - jak mozna rozwiazac w inny sposob niz adresowanie bezposrednie, linkowanie do css np. po przekierowaniu na news/strona.html, jezeli w dolaczanym pliku z katalogu glownego maja linki w postaci css/arkusz.css?

Wrzucam moj .htaccess, ktory sam wykombinowalem i nie chce dzialac:

DirectoryIndex index.html index.php
Options FollowSymLinks
Options -Indexes
RewriteEngine on
RewriteCond %{HTTP_HOST} ^adresstrony\.pl$
RewriteRule (.*) https://www.adresstrony.pl/$1 [R=301,L]
RewriteRule ^([a-zA-Z0-9_-]+)\.html$ index.php?name=$1 [L]
RewriteRule ^news/([a-zA-Z0-9_-]+)\.html$ news.php?&name=$1 [QSA, L]
RewriteRule ^https://www\.adresstrony\.pl/ssl/([a-zA-Z0-9_-]+).html ssl/strona.php [L]

Odnośnik do komentarza
Udostępnij na innych stronach

RewriteRule ^([a-zA-Z0-9_-]+)\.html$ index.php?name=$1 [L]

Niby dobrze.

RewriteRule ^news/([a-zA-Z0-9_-]+)\.html$ news.php?&name=$1 [QSA, L]

Nie przekazujesz wartości "news=10", myślę że będzie potrzebna.

RewriteRule ^https://www\.adresstrony\.pl/ssl/([a-zA-Z0-9_-]+).html ssl/strona.php [L]

RewriteRule nie sprawdza całego adresu wywołania (https://www.adresstrony.pl).

Do poczytania https://www.forum.optymalizacja.com/index.php?showtopic=62516

Nie znam się na pozycjonowaniu, ja tu tylko zużywam transfer i miejsce w sql.

Roman Kluska ujawnia: nadchodzi INFLACYJNY ARMAGEDON!

 

Odnośnik do komentarza
Udostępnij na innych stronach

Ok, poradzilem sobie i podaje gotowe rozwiazanie dla zainteresowanych:

W katalogu glownym:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^adresstrony\.pl$
RewriteRule (.*) https://www.adresstrony.pl/$1 [R=301,L]
RewriteCond %{HTTPS} on
RewriteRule (.*) https://www.adresstrony.pl/$1 [R=301,L]
RewriteRule ^([a-zA-Z0-9_-]+)\.html$ index.php?name=$1 [L]
RewriteRule ^news/([a-zA-Z0-9_-]+)-([a-zA-Z0-9_-]+)\.html$ news.php?news=$1&name=$2 [QSA]

W katalogu ssl:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.adresstrony.pl/ssl/$1 [R,L]

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