Jump to content

Mettre un vieux prestashop 1.4 en SSL


Recommended Posts

Bonjour,

Voici un lien pour vous aider:

https://www.webbax.ch/2017/05/24/ssl-prestashop-1-4/

Mais j'ai fait également mes changements (pour l'instant ca a l'air de marcher):

classes/FrontController.php

dans fonction init.php, remplacer les 2 lignes if (!defined('_PS_BASE_URL_')) par:

 
	if (!defined('_PS_BASE_URL_')){

			if (true){
				if (Tools::usingSecureMode())
					define('_PS_BASE_URL_', Tools::getShopDomainSsl(true));
				else
					define('_PS_BASE_URL_', Tools::getShopDomain(true));
					
				
			}else{
				define('_PS_BASE_URL_', Tools::getShopDomain(true));
			}
			
		}

classes/Tools.php

	public static function getProtocol($use_ssl = null)
	{
		if (true){  
			return self::getCurrentUrlProtocolPrefix();
			
		}
		return (!is_null($use_ssl) && $use_ssl ? 'https://' : 'http://');
	}

classes/Link.php

dans fonction GetPageLink, dernière ligne:

	return ((($ssl && _PS_SSL_ENABLED_) ||  Tools::usingSecureMode()) ? Tools::getShopDomainSsl(true) : Tools::getShopDomain(true)).__PS_BASE_URI__.ltrim($uri_path, '/');

 

Link to comment
Share on other sites

Pour l'instant, je ne vois pas où cela peut me générer un 301 et un forçage (contrairement à la solution de Webbax). Ici je reste prudent, si l'URL est appelée en SSL, tous les liens s'affichent en SSL. Par contre si le lien en HTTP, il n'y a pas de renvoi en SSL.

Dans mon cas, pas besoin de modif .htaccess

La seule chose à dire, c'est que si on a besoin de générer un lien en protocole HTTP alors qu'on est sur une page SSL, ca peut en effet bugguer. A surveiller donc.

 

16 minutes ago, doekia said:

Il me semble qu'il en manque dans Link

attention le forçage peut avoir des conséquences - par exemple atos - on ne doit JAMAIS forcer une 301 sur un POST

https://store.enter-solutions.com/fr/66-ssl-everywhere-pour-1411.html

 

 

Link to comment
Share on other sites

Je vois que sur TGG ATOS, le développeur avait prévu le coup, connaissant la bete qu'est ATOS:

	'automatic_response_url' => str_replace("https","http",$this->_getReturnBaseURL(TRUE)) .

maintenant faut etre juste sur qu'une page HTTP va pas se changer en page HTTPS et qu'on puisse appeler les pages encore en HTTP.

 

6 minutes ago, maestrobo said:

Oui je sais.... je n'utilise plus ATOS donc clairement il faut encoder le protocol en DUR sur le module ATOS.

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...