Skocz do zawartości

Strona wyświetla coś, czego nie ma w .htaccess


ruda wiewióra

Rekomendowane odpowiedzi

Mam pewien problem związany z ustawieniami w .htaccess.

2 dni temu umieściłam stronę na serwerze i przez kilka godzin kombinowałam na różne sposoby z podstronami - najpierw próbowałam zamienić podstrony z rozszerzeniem .php na takie bez rozszerzenia, a później jednak na takie z rozszerzeniem .html. Udało się, ale pojawił się problem - wszystkie podstrony wyświetlają się zarówno z rozszerzeniem .html i .php, jak i bez żadnego rozszerzenia albo ze shashem na końcu. Czy mogą mieć na to wpływ jakieś wcześniejsze ustawienia, które były w .htaccess, ale je skasowałam? Tak jak mówiłam - wcześniej miałam przez moment ustawione, żeby podstrony wyświetlały się bez rozszerzenia i wygląda to tak, jakby serwer nadal je pamiętał (albo to zbieg okoliczności i problem wynika z czegoś innego).

Plik wygląda aktualnie w ten sposób:

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www. [NC]

RewriteRule ^(.*)$ https://www.domena.pl/$1 [L,R=301]

RewriteCond %{REQUEST_URI} ^\/index.php$

RewriteCond %{QUERY_STRING} ^$

RewriteRule ^(.*)$ https://domena.pl/ [L,R=301]

RewriteRule ^(.*)\.html$ $1.php [L]

ErrorDocument 404 https://www.domena.pl/404.html

Czy jest tu jakiś błąd, przez który serwer błędnie interpretuje .htaccess?

Próbowałam też dodać przekierowania z dawnych adresów podstron na nowe, np. z www.domena.pl/grafika.php na www.domena.pl/projekty-graficzne.html ale żadne zmiany się nie pojawiły, tak jakby serwer w ogóle ich nie widział.

Chciałabym też wprowadzić takie ustawienia, żeby po wpisaniu adresów z .php na końcu, automatycznie przekierowało je na te z .html, ale tego też serwer nie wyłapuje.

Póki co dowiedziałam się tyle, że błąd może tkwić w tym fragmencie:

RewriteCond %{REQUEST_URI} ^\/index.php$

RewriteCond %{QUERY_STRING} ^$

RewriteRule ^(.*)$ https://domena.pl/ [L,R=301]

Próbowałam zmienić kolejność reguł, ale to też nic nie dało.

Będę bardzo wdzięczna za jakąkolwiek pomoc, bo nie znam się na tym na tyle, żeby wyłapać jakieś błędy, mimo że od jakiegoś czasu czytam na ten temat wszystko co wpadnie mi w ręce. Widocznie jednak coś pominęłam.

Pozdrawiam.

EDIT: Poeksperymentowałam trochę i po kolei wyrzucałam z .htaccess poszczególne reguły. Efekt był taki, że po usunięciu:

RewriteCond %{HTTP_HOST} !^www. [NC]

RewriteRule ^(.*)$ https://www.domena.pl/$1 [L,R=301]

podstrony nadal otwierały się bez rozszerzenia, tak samo po usunięciu:

RewriteCond %{REQUEST_URI} ^\/index.php$

RewriteCond %{QUERY_STRING} ^$

RewriteRule ^(.*)$ https://domena.pl/ [L,R=301]

i obu tych reguł jednocześnie.

Co dziwniejsze, nawet po usunięciu z serwera całego .htaccess podstrony nadal otwierały się bez rozszerzenia (z rozszerzeniem .html już nie). Czy to może oznaczać że coś jest nie tak po stronie samego serwera?

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