Autor | Zpráva | ||
---|---|---|---|
Petr Volny Profil * |
#1 · Zasláno: 5. 10. 2013, 12:34:52
Zdravím,
2 problémy. 1. Jak aktivovat https (certifikát mám) na předem defonovaných URL (tzv. pokud se bjevím na http://www.example.tld/login , aby me mod_rewrite presmeroval na https://www.example.tld/login )
2. Nyní mám mod_rewrite na udrčitý typ stránky nastavený takto: RewriteRule ^produkt-(.*) /index.php?m=product&title=$1 [L,QSA] www.example.tld/produkt-dvd-prehravc-dlr-400
ale nová adresa bude RewriteRule ^produkt-(.*)/sony/id-(.*) /index.php?m=product&cat=$1&subpage=sony&id=$2 [L,QSA] www.example.tld/produkt-dvd-prehravac/sony/id-1
Dá se efektivně nastavit přesměrování skrze mod_rewrite ze starého na nový typ URL? Děkuji |
||
Kajman Profil |
#2 · Zasláno: 5. 10. 2013, 13:10:01
Pro přesměrování, dejte před ostatní pravidla
RewriteCond %{HTTPS} !on RewriteRule ^login https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L,NE] „Dá se efektivně nastavit přesměrování skrze mod_rewrite ze starého na nový typ URL?“ Ne, přesměrujte v případě potřeby v index.php na aktuálně používanou url. Ale osobně bych zachoval původní url - čím méně změn url tím lépe. |
||
Petr Volny Profil * |
#3 · Zasláno: 5. 10. 2013, 15:05:15
Díky za pravidlo.
Dá se jej ještě doplnit o to, aby na ostatních stránkách bylo https vypnuto? Pokud je tedy návštěvník na /login tak https zapnuto, na ostatnich vypnuto. Napadlo mě i toto řešit přes php, ale nevím jak detekovat https vs. http. Díky |
||
Kajman Profil |
#4 · Zasláno: 5. 10. 2013, 15:59:57
RewriteCond %{HTTPS} on RewriteRule !^login https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L,NE] Ale pak to bude asi u obrázků, stylů a javascritpů použitých v loginu hlásit, že nejsou bezpečné, páč se stahují přes http. „řešit přes php, ale nevím jak detekovat https vs. http.“ $_SERVER["HTTPS"] |
||
Časová prodleva: 3 měsíce
|
|||
Silver8000 Profil |
#5 · Zasláno: 8. 1. 2014, 01:26:30
Tady je prikladna detekce v php :
<?php define('WebServerName',$_SERVER['SERVER_NAME']); if (@$_SERVER['HTTPS']=='on'){ define('WebServerProtocol','https://'); //Uzivatel je na strankach s HTPPS a nepresmerovava se $WebServerRedirect = 0; }else{ //Detekce jestly server ma HTTPS zapnute $WebServerCheckPort = @fsockopen(WebServerName, '443'); if (is_resource($WebServerCheckPort)){ define('WebServerProtocol','https://'); //Uzivatel neni na strankach s HTPPS a presmerovava se $WebServerRedirect = 1; fclose($WebServerCheckPort); }else{ //Server ma vypnute HTTPS a Uzivatele nepresmerovava define('WebServerProtocol','http://'); $WebServerRedirect = 0; } } ?> No a zustatek si uz date do kupy , sam tohle pouzivam s tim ze cele webovky mam v HTPPS. |
||
Časová prodleva: 10 let
|
0