Ajax redirect https nefunkcny, $this->redirect() generuje http link (inak vsetko funguje dobre)
- Chipso
- Člen | 28
Ahoj,
pouzivam tvoj nette.ajax ale nasiel som jednu chybu, pri redirecte:
flow ktory pouzivam..
- http (localhost)
- Odoslem ajax request
- Spracujem odoslem $this->redirect()
- Na server odosle resonse a redirectne
B)
- Odoslem ajax request
- Spracujem odoslem $this->redirect()
- Na server odosle response – ale tu je problem, ze mi prijde len http: URLka, bez https (cela aplikacia inak funguje dobre, vsetko – okrem $this->redirect() cez AJAX
vedel by si mi povedat, co mam robit ? nechcem to hackfixovat
PS: Cela aplikacia vazne funguje dobre, mame tam uz klientov a nikto nenarazil na ziadnu chybu
chyba koli ktorej sa to deje:
https://postimg.org/…e/zavdfhls1/
router mam urobeny takto:
$router[] = new Route("//[<org>.]$host/[<locale=en en|cs|sk>/]", 'Default:default');
$router[] = new Route("//[<org>.]$host/[<locale=en en|cs|sk>/]<presenter>[/<action>][/uuid/<uuid>]", 'Default:default');
$router[] = new Route("//[<org>.]$host/[<locale=en en|cs|sk>/]<presenter>[/<action>][/<token>]", 'Default:default');
Editoval Chipso (20. 1. 2017 15:47)
- SparkCZ
- Člen | 22
Pokud používás 2.4, měl bys implicitně používat v routě protokol
$router[] = new Route("https://[<org>.]$host/[<locale=en en|cs|sk>/]", 'Default:default');
Pokud 2.3, tak použij příznak SECURED
$router[] = new Route("//[<org>.]$host/[<locale=en en|cs|sk>/]", 'Default:default', Route::SECURED);
- Chipso
- Člen | 28
Pouzivam Nette 2.4.
Dakujem, skusal som to, ide ale o to, ze len produkcny server je na https://
localhosty mame na http://
zapisal som to pomocou
$https = getenv('ENVIRONMENT') === 'production' ? 'https://' : 'http://';
ale produkcny server mi nefunguje, je potrebne upravit nejak nginx alebo htaccess ?
skusal som to pomcou
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ale ajtak mi to nechcelo ist, webka urobila milion redirect loopov
SparkCZ napsal(a):
Pokud používás 2.4, měl bys implicitně používat v routě protokol
$router[] = new Route("https://[<org>.]$host/[<locale=en en|cs|sk>/]", 'Default:default');
Pokud 2.3, tak použij příznak SECURED
$router[] = new Route("//[<org>.]$host/[<locale=en en|cs|sk>/]", 'Default:default', Route::SECURED);
Editoval Chipso (21. 1. 2017 13:36)