Je suis en train d'essayer de mettre en place la navigation en « https » sur un projet Zend Framework.
Mais je ne parviens pas à mes fins, pour l'instant je souhaite simplement faire en sorte que si on est sur une page en https alors les liens générés par le helper url() soient aussi en https.
J'ai donc créé un helper myurl() pour essayer de faire cela :
<?php
class Application_Myurl extends Zend_View_Helper_Abstract {
public $view,$routes_ini;
public function setView(Zend_View_Interface $view){
$this->view = $view;
$this->routes_ini = new Zend_Config_Ini(APPLICATION_PATH.'/configs/routes.ini');
}
public function myurl(array $urlOptions = array(), $name = null, $reset = false, $encode = true){
if(!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on'){
$this->view->getHelper('ServerUrl')->setScheme('https');
$url = $this->view->serverUrl($this->view->url($urlOptions,$name,$reset,$encode));
}
else {
$url = $this->view->url($urlOptions,$name,$reset,$encode);
}
return $url;
}
}
Le but est donc de forcer le https si on y est déjà.Je précise qu'avant cette modif le helper url() envoyait une url en http même en navigant en https.
Le problème avec ce code c'est que l'url retournée contient 2 fois le host et le sheme...
Donc j'aurais besoin de savoir comment indiquer à url() de ne pas préfixer l'url générée par le host...
Ou une méthode plus simple si vous avez pour faire ce que je souhaite ?
Merci d'avance pour vos lumières !