Installer une boutique sans SSH

Inhaltsverzeichnis

Introduction

Ces instructions d’installation ne peuvent être utilisées qu'à partir de la version 7.0 de PepperShop.

Ces instructions doivent permettre à tous ceux qui ne reçoivent pas d’accès SSH à leur serveur web de la part de leur fournisseur d’accès d’installer PepperShop.

L’installation nécessite la modification manuelle des fichiers. Les fichiers PepperShop sont créés avec des sauts de ligne UNIX. Sur les ordinateurs Windows, ils ont donc une apparence un peu “bizarre”. Nous recommandons d’utiliser un éditeur approprié, comme par exemple le programme gratuit Notepad++, afin que les fichiers soient correctement interprétés et affichés.

Par le passé, nous avons souvent reçu des e-mails ou des messages de forum nous signalant que cette installation était inutilement compliquée. Nous pourrions nous inspirer des projets qui proposent un installateur web. Nous tenons à souligner une fois de plus que PepperShop dispose d’un outil d’installation dynamique et facile à utiliser, qui gère l’installation complète de la boutique par le biais d’un menu. Cet outil d’installation nécessite toutefois un accès SSH. Si vous ne disposez pas d’un accès Telnet / SSH, vous devez suivre les instructions suivantes.

Aperçu

L’installation peut être divisée en six étapes:

  1. télécharger le code source de PepperShop
  2. édition des fichiers à adapter
  3. téléchargement de la base de données de la boutique adaptée
  4. téléchargement des fichiers personnalisés de la boutique sur le serveur web
  5. adaptation des droits d’accès aux fichiers
  6. création de la protection d’accès pour la zone d’administration

Situation de départ / Configuration de la base de données

On part du principe que l’on veut installer la boutique avec un seul utilisateur de base de données déjà existant et une base de données MySQL ou MariaDB déjà existante. Ces étapes peuvent généralement être effectuées via le panneau de contrôle de votre fournisseur d’hébergement. Il faut noter que l’utilisateur de la base de données déjà existant possède peut-être aussi des droits qui devraient être exclus de notre concept de sécurité (GRANT, …).

De quoi ai-je besoin pour installer cette boutique ?

Pour installer PepperShop en suivant ces instructions, vous aurez besoin des composants suivants:

  • Fichiers source de PepperShop (v.7.0 ou plus récent)
  • Un éditeur de texte tel que Notepad++, …)
  • Un programme FTP (par exemple FileZilla Client, …)
  • Un compte d’hébergement web avec un accès FTP et le support suivant :
    • PHP version 7.2 ou supérieure (les versions antérieures ne sont plus compatibles !)
      • Bibliothèque GD (à partir de la version 2)
      • La fonction PHP inet_set ne doit pas être bloquée.
    • MySQL à partir de la version 5.6 (recommandé 5.7, également possible MariaDB 10.2)
    • Serveur web (Apache, …)

Téléchargement des Source Codes des PepperShops

Téléchargez la version actuelle de PepperShop via votre compte. Ouvrez la page web suivante et saisissez vos données de connexion.

  • Système de vente PepperShop : https://www.peppershop.com/shop/ Après le téléchargement, décompressez les fichiers dans un répertoire. Celui-ci contient maintenant le répertoire phpeppershop_src, dans lequel se trouvent les fichiers de la boutique. Cette boutique n’est pas encore utilisable. Il faut d’abord procéder à quelques adaptations.

Édition des fichiers à adapter

Dans le répertoire phpeppershop_src/template/ se trouvent plusieurs fichiers. Ici, nous voulons d’abord adapter les fichiers SQL. Ceux-ci sont responsables de la création et de la suppression de la base de données de la boutique dans le serveur MySQL.

Fichier : template_create.sql

Supprimer toutes les lignes de et avec {nomakeuser} à et avec {nomakeuser}. (seraient responsables de la création d’utilisateur de la configuration automatisée Telnet/SSH config.pl). Remplacer tous les {shop_db} par le nom de la base de données déjà existante. Attention : Les accolades doivent également être remplacées ! Ex. {shop_db} devient alors par exemple db1651. Remplacez également les autres accolades par les valeurs correspondantes. ({shopadmin}, {host-name}, {shopadminpwd})

Fichier : template_insert.sql

Remplacer tous les {shop_db} par le nom de la base de données déjà existante. Attention : Les accolades doivent également être remplacées ! Remplacer comme dans le fichier template_create.sql.

Fichier: template_del_tables_only.sql

Supprimer toutes les lignes de et avec {nomakeuser} à et avec {nomakeuser} (seraient responsables de la suppression des utilisateurs dans le setup automatisé Telnet/SSH).

Fichier: config_admin.inc.php

Maintenant, il faut d’abord changer de répertoire : Dans le répertoire suivant, on trouve le prochain fichier à adapter : phpeppershop_src/shop/Admin/config_admin.inc.php.. Dans ce fichier, vous devez déposer les données relatives à la base de données que vous avez reçues du panneau de contrôle de votre fournisseur d’hébergement. Par défaut, l’entrée suivante est utilisée ici :

$config_admin['db']['host']= '{hostname}'; 
$config_admin['db']['db_name']= '{shop_db}'; 
$config_admin['db']['username']= '{shopadmin}'; 
$config_admin['db']['password']= '{shopadminpwd}';

Au lieu de {hostname}, il faut indiquer le nom de l’ordinateur sur lequel fonctionne MySQL (par ex. localhost ou database.mondomaine.fr). L’identificateur {shop_db} doit être remplacé par le nom de la base de données existante. Pour finir, remplacer {shopadmin} par le nom de l’utilisateur de la base de données déjà existant. Par {shopadminpwd}, on entend le mot de passe de l’utilisateur de la base de données. Exemple de données:

$config_admin['db']['host']= 'localhost'; 
$config_admin['db']['db_name']= 'db1651'; 
$config_admin['db']['username']= 'db1651_user'; 
$config_admin['db']['password']= 'abc345def-K';

Les accolades doivent donc aussi être remplacées, mais pas les apostrophes!

Importer la base de données de la boutique

Avec un programme d’aide comme par exemple phpMyAdmin ou un autre programme, on peut maintenant lire les deux fichiers traités template_create.sql et template_insert.sql (répertoire peppershop_src/template/) dans la base de données sur le serveur de votre fournisseur d’hébergement. La plupart des fournisseurs d’hébergement proposent phpMyAdmin comme système de gestion de base de données en ligne. Remarque : Avant d’importer les fichiers, nous souhaitons attirer votre attention sur le fait que les commandes présentes dans les fichiers ne doivent être exécutées qu’une seule fois. Ne cliquez pas deux fois sur OK, attendez un peu. Si, contre toute attente, des messages d’erreur apparaissent, il faut d’abord exécuter le fichier template_del_tables_only.sql avant de réessayer avec template_crea-te.sql et ensuite template_insert.sql.

Maintenant que la base de données a été téléchargée avec succès et que les données de la boutique ont été adaptées, nous pouvons charger les fichiers de la boutique sur le serveur web et passer au point 7.

Info : Désinstallation

Si l’on veut désinstaller la boutique, il faut exécuter le fichier template_del_tables_only.sql de la même manière. Toutes les tables utilisées par PepperShop seront alors supprimées. Attention : TOUTES les données sont perdues si une sauvegarde n’a pas été effectuée et sauvegardée !

Téléchargement des fichiers personnalisés de la boutique sur le serveur web

Pour télécharger la boutique sur le serveur web, il faut utiliser un programme (S)FTP. Un programme FTP gratuit et robuste est le client FileZilla : http://filezilla-project.org. Il faut télécharger l’ensemble du répertoire peppershop_src et le renommer (par ex. shop). Le nom du répertoire sera visible plus tard dans l’URL. Exemple : http://www.meinserver.de/shop/. Si vous souhaitez accéder à la boutique sans sous-répertoire, veuillez télécharger uniquement le contenu du répertoire peppershop_src.

Personnaliser les droits d’accès aux fichiers

Si PepperShop est exécuté sur un serveur web, où des droits d’accès spéciaux aux fichiers doivent encore être définis (UNIX/Linux/MacOS-X + PHP comme module de serveur web), il faut encore les définir correctement. Le plus simple est d’adapter les droits d’accès aux fichiers avec le script automatique. Il faut l’appeler comme suit : www.votredomaine.ch/annuaire-des-boutiques/shop/Admin/shop_berechtigun-gen_clean.php

Sécuriser les données de la base de données

Il faut donner au répertoire peppershop_src/template le droit d’accès aux fichiers 700. Tous les fichiers qui s’y trouvent doivent avoir le droit d’accès 600. Ceci afin qu’aucune personne non autorisée ne puisse voir les données de la base de données. Une autre solution consiste à ne pas charger ce sous-répertoire sur le serveur web.

Nettoyer les données à l’aide d’un travail Cron

Pour le PepperShop, il convient de mettre en place un appel périodique qui effectue des travaux quotidiens (nettoyage, réenvois dans la file d’attente, traitement des abonnements, …). La base de données est notamment nettoyée et les entrées de cache qui ne sont plus nécessaires sont vidées. Sur les systèmes UNIX/Linux, on peut par exemple utiliser un job Cron avec la commande suivante:

5 0 * * *    cd {annuaire-des-boutiques}shop/Admin/; php garbage_collection.php commandline

Si le CRON ne peut pas être utilisé, un appel HTTP[S] au fichier suivant est également possible :

http[s]://{www.votredomaine.tld}/{webshop-annuaire}/shop/Admin/garbage_collection.php

Si l’administration est protégée par un mot de passe, on peut indiquer le nom d’utilisateur et le mot de passe comme suit :

http[s]://nom d'utilisateur:motde passet@{www.votredomaine.tld}/...

Création de la protection pour la zone d’administration

Pour que la zone d’administration ne soit pas accessible à n’importe qui, elle doit être protégée par un mot de passe. a. Outil du fournisseur d’hébergement. Aujourd’hui, il est courant que l’hébergeur mette à disposition un outil permettant de créer et de gérer soi-même une protection d’accès au répertoire pour n’importe quel répertoire de son propre compte web. On peut ainsi créer une protection activée pour le répertoire {annuaire-des-boutiques}/shop/Admin. b. Protection manuelle du répertoire. Au cas où le fournisseur d’accès ne mettrait pas à disposition un outil de ce type, l’outil joint SHOP_HTACCESS.php peut être utilisé pour créer une protection. Il utilise un fichier .htac-cess et un fichier .htpasswd, une ‘fonctionnalité’ du serveur web Apache. Si un Microsoft® IIS ou un autre serveur est utilisé, il faut contacter le fournisseur d’hébergement pour la protection du répertoire. Si la boutique fonctionne comme module de serveur web sous UNIX/Linux, nous donnons au répertoire {répertoire-shopver}/shop/Admin temporairement le droit d’accès 777. Nous ouvrons le fichier suivant dans notre navigateur : www.votredomaine.ch/{annuaire-des-boutiques}/shop/Admin/SHOP_HTACCESS.php Attention : respectez les majuscules et les minuscules. Nous pouvons maintenant faire générer ici notre protection .htaccess. Après avoir effectué cette opération, il faut réinitialiser les droits d’accès du répertoire admin à 755. Sous Windows, il n’y a pas de droits d’accès UNIX - il suffit de les ignorer. Procédure à suivre en cas de message d’erreur. Si l’on a essayé de mettre en place une protection htaccess et que l’on reçoit ensuite un message d’erreur ‘500 Internal Server Error’, cela signifie que la création de la protection .htaccess n’a pas fonctionné comme prévu. La plupart du temps, c’est parce que l’on veut utiliser une protection Advanced htaccess, mais que le serveur web ne supporte pas cette fonctionnalité. Quoi qu’il en soit. Pour supprimer la protection .htaccess défectueuse, il suffit de supprimer les deux fichiers .htaccess et .htpasswd dans le répertoire Admin. Le point devant le nom du fichier signifie que les fichiers sont considérés comme ‘cachés’. Si on ne les voit pas dans l’outil FTP, il faut chercher le réglage correspondant. Autres aspects de sécurité. Le fichier .htpasswd ne devrait pas se trouver dans un répertoire accessible par le web. Il faut placer ce fichier en dehors du répertoire web et adapter le chemin dans le fichier .htaccess en conséquence. Par défaut, il se trouve dans le répertoire : {annuaire-des-boutiques}/shop/Admin/. Nous attirons également votre attention sur le fait que le fichier .htaccess en mode basic accepte la saisie du mot de passe sans le crypter et n’est donc pas sécurisé. De nombreux serveurs web ne peuvent pas (encore) gérer le paramètre Advanced (qui correspond à la méthode Digest).

La boutique est maintenant prête à être utilisée, le guide des premières étapes vous aidera à poursuivre la procédure avec la boutique en ligne PepperShop. Nous vous souhaitons beaucoup de plaisir !

Aide supplémentaire

Vous avez besoin d’un soutien supplémentaire? PepperShop met à votre disposition différentes possibilités.

  • Souvent, un clic dans l’administration en haut à droite sur l’icône en forme de point d’interrogation aide. Ici, vous obtenez directement de l’aide sur le sujet concerné.
  • Vous trouverez diverses réponses dans la FAQ. Celles-ci peuvent également être consultées dans l’administration de la boutique sous Aide&News -> Archives d’aide. Ou sur notre site https://www.peppershop.com/de/services/support/faq/
  • Dans la PepperShop Academy https://www.peppershop.com/de/services/academy/, vous pouvez trouver facilement diverses instructions vidéo gratuites.
  • Nous sommes également à votre disposition par e-mail ou par téléphone (CHF 185./h) support@glarotech.ch ou +41 71 923 08 58.
🌶️
🔥
🌶️