Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forum osCommerce-fr _ Hébergement _ passer un site en HTTPS

Écrit par : templier62 13 Nov 2017, 16:55

Bonjour à toutes et tous ,

J'ai déjà posté sur le forum avec le pseudo de templier mais n'ayant pas compris à l'époque j'avais abandonné.
Aujourd'hui j'ai décidé de reprendre ce travail qui consiste a passer mon site en HTTPS.
Je reprends ma quête ce jour sous le pseudo de templier62 :

-j'ai activé le SSL chez OVH
-j'ai modifié le htacces comme préconisé par tous
-j'ai modifié le fichier de configuration sous includes (j'ai passé les HTTP en HTTPS)

---------------> résultat OK j'ai le cadenas vert sur les pages , tout est OK les articles sont bien affichés dans chaque page ::::::::::::::: >>> sauf que lorsque je clique sur un article d'une page j'ai une erreur "404" et le chemin affiché dans le navigateur est HTTP et non HTTPS . Dès que l'on tente d’accéder à la base de données le chemin d’accès retourné dans le navigateur est du style "HTTP_SERVERDIR_WS_HTTP_CATALOG.............." avec message d'erreur fichier non trouvé .


Je suis donc allé plus loin que la fois dernière , mais je coince encore à l'accès de la base , si quelqu'un à une idée ?

Cordialement

Bonne semaine à tous


Écrit par : Bonbec 13 Nov 2017, 18:03

Bonjour templier,

C'est quelle version d'OsCommerce ? Faudrait l'indiquer en signature, çà fera gagner du temps happy.gif

Si çà marque un truc du genre HTTP_SERVERDIR_WS_HTTP_CATALOG, à priori c'est que le fichier configure.php n'est pas lu ou qu'il y a une erreur dans les DEFINE

Écrit par : templier62 14 Nov 2017, 09:41

Bonjour Bonbec
ma version
oscommerce 2.3.1

Écrit par : templier62 14 Nov 2017, 09:48

voila ce que j'ai en fichier configure.php

<?php
/*define('HTTP_SERVER', 'http://www.XXXXXXXXXXXXXX.com/');*/
define('HTTPS_SERVER', 'https://www.XXXXXXXXXXXXXX.com/');
/*define('HTTP_SERVER', 'http://99.99.99.99/carole/');
define('HTTPS_SERVER', 'http://99.99.99.99/carole/');*/
define('ENABLE_SSL', true);
/*define('HTTP_COOKIE_DOMAIN', '');*/
define('HTTPS_COOKIE_DOMAIN', '');
/*define('HTTP_COOKIE_PATH', '');*/
define('HTTPS_COOKIE_PATH', '');
/*define('DIR_WS_HTTP_CATALOG', '');*/
define('DIR_WS_HTTPS_CATALOG', '');
define('DIR_WS_IMAGES', 'images/');
define('DIR_WS_ICONS', DIR_WS_IMAGES . 'icons/');
define('DIR_WS_INCLUDES', 'includes/');
define('DIR_WS_BOXES', DIR_WS_INCLUDES . 'boxes/');
define('DIR_WS_FUNCTIONS', DIR_WS_INCLUDES . 'functions/');
define('DIR_WS_CLASSES', DIR_WS_INCLUDES . 'classes/');
define('DIR_WS_MODULES', DIR_WS_INCLUDES . 'modules/');
define('DIR_WS_LANGUAGES', DIR_WS_INCLUDES . 'languages/');

define('DIR_WS_DOWNLOAD_PUBLIC', 'pub/');
define('DIR_FS_CATALOG', '/home/boutiqueh/www/XXXXXXXXXXXXXX/');

define('DIR_FS_DOWNLOAD', DIR_FS_CATALOG . 'download/');
define('DIR_FS_DOWNLOAD_PUBLIC', DIR_FS_CATALOG . 'pub/');

define('DB_SERVER', 'mysql999999999.perso');
define('DB_SERVER_USERNAME', 'xxxxxxxxxxxxxxxxxxxx');
define('DB_SERVER_PASSWORD', 'xxxxxxxxxxxxxxxxxxxxxxx');
define('DB_DATABASE', 'xxxxxxxxxxxxxxxxxxxxx');

define('USE_PCONNECT', 'false');
define('STORE_SESSIONS', 'mysql');
?

Écrit par : Bonbec 14 Nov 2017, 10:03

Re,

Ok, je pense avoir trouvé ce qui cloche : les lignes commentées comme celle-ci :
/*define('HTTP_SERVER', 'http://www.XXXXXXXXXXXXXX.com/');*/

Certains scripts en font appel, d'où les erreurs comme HTTP_SERVERDIR_WS_HTTP_CATALOG

Il vaut mieux "tricher" en mettant ces lignes comme ceci :
define('HTTP_SERVER', 'https://www.XXXXXXXXXXXXXX.com/'); <== ajout du s à http ce qui donne https


Faire cela à toutes les lignes commençant par define('HTTP_ et qui sont commentées.

Écrit par : Bonbec 14 Nov 2017, 10:06

Re,

Citation (templier62 @ 14 Nov 2017, 09:41) *
Bonjour Bonbec
ma version
oscommerce 2.3.1

Le plus simple est d'aller dans son compte et modifier la signature, comme cela elle apparaîtra systématiquement à chaque message happy.gif

Écrit par : templier62 15 Nov 2017, 09:55

Merci Bonbec ,

Une petite question : comment une ligne commentée dans un fichier de config peut elle etre interprétée par un programme ?

bonne journée

Écrit par : Bonbec 15 Nov 2017, 10:11

Si la ligne est commentée, avec // en début de ligne, le parseur PHP l'ignore.
Du coup, tous les scripts qui font appel à la ligne ignorée donnent des erreurs.

Par exemple quand çà affiche HTTP_SERVERDIR_WS_HTTP_CATALOG dans une page, c'est que HTTP_SERVER et DIR_WS_HTTP_CATALOG sont commentées et non interprétés.
Cela aurait dû afficher : http://www.XXXXXXXXXXXXXX.com/


D'ailleurs je viens de voir une erreur en relisant, pour la ligne :
define('HTTPS_SERVER', 'http://99.99.99.99/carole/');
cela devrait être
define('HTTPS_SERVER', 'https://99.99.99.99/carole/');


Écrit par : templier62 15 Nov 2017, 10:28

bonjour Bonbec ,

Dois je , dans ce cas modifier mon fichier configure.php (ci dessous):

<?php
/*define('HTTP_SERVER', 'http://www.xxxxxxxxxxxxxxxxxxxxx.com/');*/
define('HTTPS_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/');
/*define('HTTP_SERVER', 'http://99999999/carole/');
define('HTTPS_SERVER', 'http://99999999/carole/');*/
define('ENABLE_SSL', true);
/*define('HTTP_COOKIE_DOMAIN', '');*/
define('HTTPS_COOKIE_DOMAIN', '');
/*define('HTTP_COOKIE_PATH', '');*/
define('HTTPS_COOKIE_PATH', '');

Pour le transformer en cela (ci dessous):

<?php
/*define('HTTP_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/');*/ --------------> http devient https
define('HTTPS_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/');
/*define('HTTP_SERVER', 'https://99999999/carole/'); --------------> http devient https
define('HTTPS_SERVER', 'http://99999999/carole/');*/
define('ENABLE_SSL', true);
/*define('HTTP_COOKIE_DOMAIN', '');*/
define('HTTPS_COOKIE_DOMAIN', '');
/*define('HTTP_COOKIE_PATH', '');*/
define('HTTPS_COOKIE_PATH', '');


Question : une ligne /* bla bla */ en php est-elle bien commentée ? si oui , aucun programme ne peut l'interpréter ?
Question : faut il donc que je décommente /*define('HTTP_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/');*/ --> define('HTTP_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/'); afin que ces deux lignes soient interprétées ?


Écrit par : Bonbec 15 Nov 2017, 13:47

Oui il faut virer tous les /* en début et fin de ligne

Code
define('HTTP_SERVER', 'http://www.xxxxxxxxxxxxxxxxxxxxx.com/');
  define('HTTPS_SERVER', 'https://www.xxxxxxxxxxxxxxxxxxxxx.com/');
  define('HTTP_SERVER', 'http://99999999/carole/');
  define('HTTPS_SERVER', 'https://99999999/carole/');
  define('ENABLE_SSL', true);
   define('HTTP_COOKIE_DOMAIN', '');
  define('HTTPS_COOKIE_DOMAIN', '');
   define('HTTP_COOKIE_PATH', '');
  define('HTTPS_COOKIE_PATH', '');


Écrit par : Havock 17 Nov 2017, 09:18

Bonjour,

Le début de ton config est :

Code
/*define('HTTP_SERVER', 'http://www.XXXXXXXXXXXXXX.com/');*/
define('HTTPS_SERVER', 'https://www.XXXXXXXXXXXXXX.com/');
/*define('HTTP_SERVER', 'http://99.99.99.99/carole/');
define('HTTPS_SERVER', 'http://99.99.99.99/carole/');*/
define('ENABLE_SSL', true);
/*define('HTTP_COOKIE_DOMAIN', '');*/
define('HTTPS_COOKIE_DOMAIN', '');
/*define('HTTP_COOKIE_PATH', '');*/
define('HTTPS_COOKIE_PATH', '');
/*define('DIR_WS_HTTP_CATALOG', '');*/
define('DIR_WS_HTTPS_CATALOG', '');


Pour que le code soit interprété tu dois virer les /* et */ et virer les doublons (par exemple tu as deux fois :
Code
define('HTTP_SERVER'

et deux fois :
Code
define('HTTPS_SERVER'


A priori je mettrais :
Code
define('HTTP_SERVER', 'https://www.XXXXXXXXXXXXXX.com/');
define('HTTPS_SERVER', 'https://www.XXXXXXXXXXXXXX.com/');
define('ENABLE_SSL', true);
define('HTTP_COOKIE_DOMAIN', '');
define('HTTPS_COOKIE_DOMAIN', '');
define('HTTP_COOKIE_PATH', '');
define('HTTPS_COOKIE_PATH', '');
define('DIR_WS_HTTP_CATALOG', '');
define('DIR_WS_HTTPS_CATALOG', '');



Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)