Autor Zpráva
Daniel47
Profil
Ahojte, nefunguje mi tento kód v souboru .htaccess:

# ------------------------------------------------------------------- #
RewriteEngine On
RewriteBase /

# Přesměrování z http:// na https:// #
RewriteCond %{ENV:HTTPS} !^.*on
RewriteRule ^(.*)$ https://dvolt.cz/$1 [R,L]

# Přesměrovaní verze www na verzi bez www # 
RewriteCond %{HTTP_HOST} ^www\.dvolt\.cz [NC]
RewriteRule (.*) https://dvolt.cz/$1 [R=301,QSA,L]

# Přesměrování stránky:  "soubor.pripona"  na:  "soubor"  a změna ostatních souborů #
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^.]+)$    /$1.php    [L] 
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule ^([^.]+)$    /$1.html    [L]
RewriteCond %{ENV:REDIRECT_STATUS} =""
RewriteCond %{REQUEST_METHOD} =GET
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.+)\.(php|html)$ https://%{HTTP_HOST}/$1 [L,R=301,NE]

Hlásí to chybu 404, že to stránku nenašlo, ale na OneBit hosting to funguje dobře, ale na novém hostingu ne. Nevíte v čem je problém?
Kajman
Profil
Nejjednodušší je zeptat se podpory na novém hostingu. Třeba tam mají .htaccess zakázaný z výkonostních důvodů nebo vůbec nepoužívají apache.
Daniel47
Profil
Kajman:
Ono to je na Apache 2.4 a PHP verze 7.4 a .htaccess je povolený. Vlastně jsem vám nenapsal, že mi to jede na vlastním serveru.
Kajman
Profil
Na svém serveru si můžete zapnout podrobné logování (nejlépe jen dočasně na vyřešení problému, aby to nemělo vliv na výkon při běžném provozu).
httpd.apache.org/docs/current/mod/mod_rewrite.html#logging

Obecně pro test můžete do .htaccess napsat nějaký neexistující příkaz. Pokud je .htaccess povolený, mělo by to spadnou s chybou 500 (detail bude v error logu).

Pro test, zda je povolený mod_rewrite v povoleném .htaccess, můžete použít návod z faq
Řešení některých častějších problémů (FAQ) » Kterak ověřit, zda je rewrite povoleno a zapnuto

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0