Htaccess – Smyčka přesměrování

před rokem

Thommie
Člen | 23
+
0
-

Ahoj,

nasazuji svůj projekt do ostrého provozu na Active24 a v www mám standardní httaccess, který byl už v projektu:

# Apache configuration file (see httpd.apache.org/docs/current/mod/quickreference.html)

# disable directory listing
<IfModule mod_autoindex.c>
    Options -Indexes
</IfModule>

# enable cool URL
<IfModule mod_rewrite.c>
    RewriteEngine On
    # RewriteBase /

    # use HTTPS
    RewriteCond %{HTTPS} !on
    RewriteRule .? https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    # prevents files starting with dot to be viewed by browser
    RewriteRule /\.|^\.(?!well-known/) - [F]

    # front controller
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz|map)$ index.php [L]
</IfModule>

# enable gzip compression
<IfModule mod_deflate.c>
    <IfModule mod_filter.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript application/json application/xml image/svg+xml
    </IfModule>
</IfModule>

Prohlížeč mi vyhazuje chybu a píše, že došlo k příliš mnoha přesměrováním.
Potřebuji adresu ve tvaru https://www.example.cz

v indexu mám:

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
    $_SERVER['HTTPS'] = 'on';
    $_SERVER['SERVER_PORT'] = '443';
}

$container = require __DIR__ . '/../home/bootstrap.php';

$container->getByType(Nette\Application\Application::class)
    ->run();

pokud z htaccess dám pryč řádky s https:

# use HTTPS
    RewriteCond %{HTTPS} !on
    RewriteRule .? https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

tak se aplikace rozběhne, ale umožní i přístup na http, což nechci.

Nevidíte prosím, kde je chyba, případně, co mám přidat?

Díky

Editoval Thommie (27. 5. 2017 12:59)

před rokem

Thommie
Člen | 23
+
0
-

Vyřešil jsem přidáním

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [L,QSA,NE]

tak kdyby to ještě někdo řešil na active24.

https://faq.active24.com/…ifik%C3%A1ty#…

Editoval Thommie (27. 5. 2017 19:07)

před rokem

iNviNho
Člen | 354
+
0
-

Pozrii :)

https://forum.nette.org/…za-http-host

Inak ja tieto veci nedávam do .htaccess, ktorý je vo www ale ešte o uroven vyššie.