Autor | Zpráva | ||
---|---|---|---|
holann Profil * |
#1 · Zasláno: 10. 9. 2018, 15:09:03
RewriteCond %{HTTPS} !=on
RewriteRule ^ %{HTTP_HOST}%{REQUEST_URI} [L,R=301] potřebuji tuto konfiguraci htaccessu upravit aby volání ws_* se nepřesměrovávala na https a všechna ostatní ano Děkuji za radu |
||
Kajman Profil |
RewriteCond %{HTTPS} !=on RewriteRule !^ws_ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE] Ale klienti již mohou mít původní přesměrování pro ws_ v cache a použít ho, protože tam je kód 301 (tedy trvalé, které si mohou zapamatovat). |
||
holann Profil * |
Kajman:
Moc dík za radu, vypadá to, že se to chová jak potřebuji Kajman: Tak ještě něco , hlášení Smyčka při přesměrování Server přesměrovává požadavky na tuto adresu sám na sebe, a to takovým způsobem, který zabraňuje jejich dokončení. Kde může být problém, po zadani odkazu web.cz je web.cz/web.cz/web.cz/web.cz/web.cz |
||
holann Profil * |
#4 · Zasláno: 10. 9. 2018, 17:42:49
Tak nějak jsem se v rom zamotal , prosím jak by měl vypadat htaacess , aby provedl následující
1. přesměrování na https kromě ws_* 2. www.stranka.cz převedl na stranka.cz 3. stranka.cz/pokus převedl na stranka.cz/pokus/ (lomítko na konci , kromě odkazů na soubor např. stranka.cz/pokus/img.jpg) Mod děkuji za radu |
||
Kajman Profil |
#5 · Zasláno: 11. 9. 2018, 09:41:33
Možná něco takového
RewriteEngine On RewriteBase / RewriteCond %{HTTPS} !=on RewriteRule !^ws_ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=302,NE] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^.]*[^/])$ %{REQUEST_URI}/ [L,R=302,NE] RewriteCond %{HTTP_HOST} ^www\.([^.]+\.[^.]+)$ [NC] RewriteRule ^ https://%1%{REQUEST_URI} [L,R=302,NE] |
||
holann Profil * |
Prosím o kontrolu, jestli dané podmínky splňují následující požadavky, moc děkuji...
1. přesměrování na https kromě ws_* 2. www.stranka.cz převedl na stranka.cz 3. stranka.cz/pokus převedl na stranka.cz/pokus/ (lomítko na konci , kromě odkazů na soubor např. stranka.cz/pokus/img.jpg) RewriteEngine On RewriteBase / # http na https krome ws_* RewriteCond %{HTTPS} off RewriteRule !^ws_ %{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE] # link bez www RewriteCond %{HTTPS} on RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] RewriteRule .* %1%{REQUEST_URI} [L,R=301,NE] # pridani lomitka na konec (krome souboru) RewriteRule ^([^.]*[^/])$ /$1/ [L,R=301,NE] Kajman: ... o děkuji, vyzkouším.... něco jsem se snažil vytvořit (viz. poslední příspěvek) |
||
holann Profil * |
#7 · Zasláno: 11. 9. 2018, 13:37:07
tak jestě jeden problémek, z mobilní aplikace načítám obrázky, ale po přechodu na https se mě prostě nenačítají, musel bych v appce nastavit přímo https://.... , jenže to by znamenalo nový buil a s tím spojené další problémy.
Lze tedy nastavit, aby se http požadavky z mobilních zařízení (android, ios) automaticky nepřesměrovávaly na https (tzn. upravit toto, už by se to neomezovalo jen na volání webových služeb ws_ , které volám z mobilních zařízení, ale na vše RewriteRule !^ws_ %{HTTP_HOST}%{REQUEST_URI} [L,R=302,NE]) Opět moc děkuji za radu |
||
Kajman Profil |
Moderátor Kajman: Vkládej prosím kódy mezi značky [>pre] a [>/pre] (stačí kliknout na ).
A není to spíše tak, že z mobilu načítáte html stránku přes https a ta v sobě obsahuje obrázky na http? To přece stačí všechny odkazy (obrázky, styly, javascripty, iframe,...) napsat s relativní adresou. |
||
holann Profil * |
Kajman:
no, z mobilní appky volám webovou službu přímo linkem např. ws_vrat_data.php . Když jsem neudělal tu podmínku v htaccessu ws_* tak data mě to data nevrátilo, ve fci se POST změnilo na GET (nevím proč). Když jsem opravil zdroják v appce a volal funkci přímo https://... data to vrátilo. Bohužel když opravím volání přímo v appce, znamená to udělat nový build appky a stejně záleží na uživatelých, kdy si appku zaktualizují. Stejný problém je ve volání obrázků přímo z appky např. stranky.cz/img/obrazek.jpg , po přesměrování v htaccessu se obrázek už nezobrazí. Nejedná se o načítání webové stránky v mobilu, jedná se o volání php a obrázků přímo z appky. Takže otázka je spíše jak vše přesměrovat vše na https z prohlížečů a ostatní voláni z mobilních appek ponechat na http. asi nějak využít parametr %{HTTP_USER_AGENT} , ale nevím jak to nadefinovat |
||
Kajman Profil |
#10 · Zasláno: 11. 9. 2018, 14:47:53
Při požadavku POST se nedá přesměrovat se zachováním poslaných dat. U přesměrování se pak dělává výjimka (u vás 3x před každým rewriterule)
RewriteCond %{REQUEST_METHOD} !=POST Pokud ale aplikace neakceptuje přesměrování ani u GET požadavků (obrázky), doporučil bych se přesměrování vyhnout. Místo přesměrování na straně serveru můžete pro vyhledávače uvést link cannonical. Pro moderní prohlížeče pak nastavit Strict-Transport-Security a použít v html stránce např. jeden obrázek nebo iframe přes https - tam prohlížeč zjistí, ze má používat pro tu doménu jen https i když je odkaz na http. |
||
holann Profil * |
OK, aktivoval jsem si na webhostingu accesslog.
Když neprovádím přesměrování http kod je 200, když ano tak dojde přesměrování kod 302 a appka nepracuje jak má (nenačítá data ani obrázky) Takže to vypadá, co je přesměrované na https není OK, takže ještě pokus Prosím, jak nastavit v htaccessu, aby se přesměrování neprovádělo pro ws_* a také *.png obrázky a nebo raději obecně pro přístup z mobilních zařízení (android, ios) Opět děkuji za pomoc Ještě upřesnění... přesměrování na https u webových stránek je OK, chybně pracuje volání z mobilní appky ANO, tak je to tak ... jestliže je požadavek z mobilní aplikace přesměrováván na https, appka nepracuje správně. Tak prosím, jak nastavit v htaccesu, aby požadavky z mobilních zařízení (android, ios) nebyla přesměrovávána na https (nejedná se o přístup z webového prohlížeče). ? Dik |
||
Kajman Profil |
#12 · Zasláno: 11. 9. 2018, 19:43:41
holann:
„Tak prosím, jak nastavit v htaccesu, aby požadavky z mobilních zařízení (android, ios) nebyla přesměrovávána na https“ Nepřesměrovávat vůbec, když to ta apka neumí následovat, ani se nehlásí svým specifickým user agentem, kterým by se to dalo rozlišit. |
||
Časová prodleva: 6 let
|
0