GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer la plateforme de commerce électronique X-cart sur Debian 9

Ce didacticiel vous guidera sur l'installation et la configuration de la dernière version de la plate-forme de commerce électronique X-Cart dans la version Debian 9.2, afin de créer une boutique en ligne gratuite.

X-Cart est une plate-forme de panier d'achat commerciale open source puissante et complexe, dont la plupart des éléments sont écrits en langage de programmation PHP et souvent déployés en tant que solution logicielle en tant que service (SaaS). La plate-forme d'achat X-cart peut également être installée sous Linux sous les serveurs Web Apache/Nginx, le système de gestion de base de données PHP et MySQL/MariaDB, également connu sous le nom de pile LAMP ou LEMP. La plate-forme de commerce électronique en ligne X-Cart CMS est très utilisée pour créer des boutiques en ligne pour différentes entreprises et pour annoncer et vendre des services et des marchandises.

Exigences

  • Installation du serveur Debian 9 sur une machine bare metal ou sur un serveur privé virtuel 
  • privilèges sudo root pour un compte local ou distant ou accès direct au compte root 
  • Une adresse IP statique configurée pour l'une de vos cartes d'interface réseau système 
  • Un nom de domaine, privé ou public, selon votre déploiement, avec les enregistrements DNS appropriés configurés pour les services Web. Si vous n'avez pas de nom de domaine valide ou enregistré, vous pouvez effectuer l'installation et accéder au site Web via l'adresse IP de votre serveur
  • Si vous souhaitez utiliser l'inscription au site Web, la modération des commentaires et d'autres fonctionnalités, vous devez disposer d'un serveur de messagerie en cours d'exécution correctement configuré dans vos locaux avec un accès à distance à ses services IMAP et SMTP.

Prérequis

Avant de commencer à installer et à configurer X-Cart à partir des sources de votre propre serveur, assurez-vous d'abord que le système répond à toutes les exigences logicielles pour compiler et installer l'application. Lors de la première étape, mettez à jour vos référentiels système et vos progiciels en exécutant la commande ci-dessous.

mise à jour apt
mise à niveau d'apt

Une fois le système entièrement mis à jour, configurez le nom de votre système en exécutant la commande suivante. Remplacez votre variable de nom d'hôte en conséquence.

hostnamectl set-hostname xcart

Vérifiez le nom d'hôte de la machine et le fichier d'hôtes en exécutant les commandes suivantes.

nom_hôtectl 
cat /etc/hostname 
nom d'hôte –s
nom d'hôte –f

Enfin, redémarrez le serveur Debian afin d'appliquer les mises à jour du noyau et le nom d'hôte change correctement.

redémarrer systemctl

À l'étape suivante, exécutez la commande suivante afin d'installer certains utilitaires nécessaires qui seront utilisés pour gérer davantage votre système à partir de la ligne de commande.

apt installer wget bash-completion zip décompresser

X-Cart est une plate-forme de commerce électronique CMS basée sur le Web, écrite principalement en langage de programmation côté serveur PHP. Afin d'exécuter les scripts de fichiers PHP de l'application, un serveur Web, tel qu'un serveur HTTP Apache, et une passerelle de traitement PHP doivent être installés et rendus opérationnels dans le système. Afin d'installer le serveur Web Apache et l'interpréteur PHP avec tous les modules PHP nécessaires au bon fonctionnement de l'application, exécutez la commande suivante dans la console de votre serveur.

apt installer apache2 libapache2-mod-php7.0 php7.0 php7.0-mbstring php7.0-curl php7.0-gd php7.0-xml php7.0-opcache

Une fois Apache et PHP installés, testez si le serveur Web est opérationnel et écoute les connexions réseau sur le port 80 en exécutant la commande suivante avec les privilèges root.

netstat –tlpn

Si l'utilitaire de réseau netstat n'est pas installé par défaut sur votre système Debian, exécutez la commande suivante pour l'installer.

apt install net-tools

En inspectant la sortie de la commande netstat, vous pouvez voir que le serveur Web Apache écoute les connexions réseau entrantes sur le port 80. Pour la même tâche, vous pouvez également utiliser la commande ss, qui est automatiquement installée par défaut dans Debian 9.

ss- tulpn

Si un pare-feu est activé sur votre système, tel qu'une application de pare-feu UFW, vous devez ajouter une nouvelle règle pour autoriser le trafic HTTP à traverser le pare-feu en exécutant la commande suivante.

ufw autoriser WWW

ou

ufw autoriser 80/tcp

Si vous utilisez des règles brutes iptables pour gérer les règles de pare-feu sur votre serveur Debian, ajoutez la règle suivante pour autoriser le trafic entrant du port 80 sur le pare-feu afin que les visiteurs puissent parcourir la boutique en ligne.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

Ensuite, activez et appliquez les modules Apache suivants requis par l'application de commerce électronique pour fonctionner correctement, en exécutant la commande ci-dessous.

a2enmod réécriture
systemctl redémarrer apache2

Enfin, testez si la page Web par défaut du serveur Web Apache peut être affichée dans les navigateurs de votre client en visitant l'adresse IP de votre machine Debian ou votre nom de domaine ou FQDN de serveur via le protocole HTTP, comme indiqué dans l'image ci-dessous. Si vous ne connaissez pas l'adresse IP de votre machine, exécutez les commandes ifconfig ou ip a pour révéler l'adresse IP de votre serveur.

http://votre_domaine.tld 

Afin d'installer et d'accéder au backend du panneau d'administration Web X-Cart et au site Web frontal via le protocole HTTPS qui sécurisera le trafic pour vos clients, exécutez la commande suivante pour activer le module SSL du serveur Web Apache et le fichier de configuration du site SSL.

a2enmod ssl
a2ensite default-ssl.conf

Ensuite, ouvrez le fichier de configuration du site SSL par défaut d'Apache avec un éditeur de texte et activez les règles de réécriture d'URL en ajoutant les lignes de code suivantes après la directive DocumentRoot, comme indiqué dans l'exemple ci-dessous :

nano /etc/apache2/sites-enabled/default-ssl.conf

Extrait du fichier de configuration du site SSL :


  Options +FollowSymlinks
  AllowOverride All
  Require all accorded

Apportez également la modification suivante à la ligne VirtualHost pour ressembler à l'exemple ci-dessous :

Fermez le fichier SSL Apache et ouvrez le fichier /etc/apache2/sites-enabled/000-default.conf pour le modifier et ajoutez les mêmes règles de réécriture d'URL que pour le fichier de configuration SSL. Insérez les lignes de code après l'instruction DocumentRoot comme indiqué dans l'exemple ci-dessous.


  Options +FollowSymlinks
  AllowOverride All
  Require all accorded

Enfin, redémarrez le démon Apache pour appliquer toutes les règles configurées jusqu'à présent et visitez votre domaine via le protocole HTTP. Étant donné que vous utilisez les paires de certificats auto-signés automatiquement émis par Apache lors de l'installation, un avertissement d'erreur doit s'afficher dans le navigateur.

systemctl redémarre apache2

https://votredomaine.tld  

Acceptez l'avertissement pour continuer et être redirigé vers la page Web par défaut d'Apache, comme illustré dans l'image ci-dessous.

Si l'application de pare-feu UFW bloque les connexions réseau entrantes au port HTTPS, vous devez ajouter une nouvelle règle pour autoriser le trafic HTTPS à traverser le pare-feu en exécutant la commande suivante.

ufw autoriser 'WWW Full'

ou

ufw autoriser 443/tcp

Si iptables est l'application de pare-feu par défaut installée pour protéger votre système Debian au niveau du réseau, ajoutez la règle suivante pour autoriser le trafic entrant du port 443 dans le pare-feu afin que les visiteurs puissent parcourir votre nom de domaine.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

À l'étape suivante, nous devons apporter d'autres modifications au fichier de configuration par défaut de PHP afin de nous assurer que les variables PHP suivantes sont activées et que le paramètre de fuseau horaire PHP est correctement configuré et correspond à l'emplacement géographique de votre système. Ouvrez le fichier /etc/php/7.0/apache2/php.ini pour le modifier et assurez-vous que les lignes suivantes sont configurées comme suit. Aussi, dans un premier temps, faites une sauvegarde du fichier de configuration PHP.

cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini

  Recherchez, éditez et changez les variables suivantes dans le php.ini fichier de configuration :

file_uploads = Activé
allow_url_fopen = Activé
memory_limit = 128 M
upload_max_file_size = 64 M
date.timezone = Europe/Londres

Augmentez la variable memory_limit en fonction de la prise en charge des pièces jointes volumineuses et remplacez la variable time.zone en fonction de votre heure physique en consultant la liste des fuseaux horaires fournie par la documentation PHP au lien suivant http://php.net/manual/en/timezones .php.

Si vous souhaitez augmenter la vitesse de chargement des pages de votre site Web via le plug-in OPCache disponible pour PHP7, ajoutez les paramètres OPCache suivants au bas du fichier de configuration de l'interpréteur PHP, comme indiqué ci-dessous :

opcache.enable=1 
opcache.enable_cli=1 
opcache.interned_strings_buffer=8 
opcache.max_accelerated_files=10000 
opcache.memory_consumption=128 
opcache. save_comments=1
opcache.revalidate_freq=1

Fermez le fichier de configuration php.ini et vérifiez la fin du fichier de configuration PHP pour vérifier si les variables ont été correctement ajoutées en lançant la commande ci-dessous.

tail /etc/php/7.0/apache2/php.ini

Après avoir apporté toutes les modifications expliquées ci-dessus, redémarrez le démon apache pour appliquer les nouvelles modifications en exécutant la commande suivante.

systemctl redémarrer apache2

Enfin, créez un fichier d'informations PHP en exécutant la commande suivante et vérifiez si le fuseau horaire PHP a été correctement configuré en visitant le fichier de script d'informations PHP à partir d'un navigateur à l'URL suivante, comme illustré dans l'image ci-dessous. Faites défiler jusqu'au paramètre de date pour vérifier la configuration du fuseau horaire php.

écho ''| tee /var/www/html/info.php

https://domain.tld/info.php

L'application Web de commerce électronique X-Cart stocke différentes configurations, telles que les utilisateurs, les sessions, les contacts, les produits, les catalogues et autres, dans une base de données RDBMS. Dans ce guide, nous allons configurer X-Cart pour utiliser la base de données MariaDB comme backend. Exécutez la commande ci-dessous pour installer la base de données MariaDB et le module PHP nécessaire pour accéder à la base de données mysql.

apt install mariadb-server php7.0-mysql

Après avoir installé MariaDB, vérifiez si le démon est en cours d'exécution et écoute les connexions sur localhost, port 3306, en exécutant la commande netstat.

netstat –tlpn | grep mysql

Ensuite, connectez-vous à la console MySQL et sécurisez le compte racine MariaDB en lâchant les commandes suivantes.

mysql -h localhost
utiliser mysql ;
mettre à jour l'ensemble d'utilisateurs plugin='' où user='root' ;
vider les privilèges ;
quitter

À l'étape suivante, sécurisez MariaDB en exécutant le script mysql_secure_installation fourni par les packages d'installation à partir des référentiels Debian Stretch. Lors de l'exécution, le script posera une série de questions conçues pour sécuriser la base de données MariaDB, telles que :changer le mot de passe root MySQL, supprimer les utilisateurs anonymes, désactiver les connexions root à distance et supprimer la base de données de test. Exécutez le script en exécutant la commande ci-dessous et assurez-vous de taper oui à toutes les questions posées afin de sécuriser complètement le démon MySQL. Utilisez la sortie de script suivante, sauf comme guide.

sudo mysql_secure_installation
REMARQUE :L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS LES SERVEURS MariaDB

      UTILISÉS EN PRODUCTION ! VEUILLEZ LIRE ATTENTIVEMENT CHAQUE ÉTAPE !

 

Afin de vous connecter à MariaDB pour le sécuriser, nous aurons besoin du mot de passe

actuel pour la racine utilisateur. Si vous venez d'installer MariaDB et

vous n'avez pas encore défini le mot de passe root, le mot de passe sera vide,

il vous suffit donc d'appuyer sur Entrée ici.

 

Entrez le mot de passe actuel pour root (entrez pour aucun) :

OK, mot de passe utilisé avec succès, passez à autre chose...

 

La définition du mot de passe root garantit que personne ne peut se connecter à l'utilisateur root MariaDB

sans l'autorisation appropriée.

 

Vous avez déjà défini un mot de passe root, vous pouvez donc répondre "n" en toute sécurité.

 

Modifier le mot de passe root ? [O/n] y

Nouveau mot de passe :

Saisissez à nouveau le nouveau mot de passe :

Mot de passe mis à jour avec succès !

Rechargement des tables de privilèges..

 ... Succès !

 

 

Par défaut, une installation de MariaDB a un utilisateur anonyme, permettant à n'importe qui

de se connecter à MariaDB sans avoir à créer un compte utilisateur

pour lui. Ceci est uniquement destiné aux tests et à rendre l'installation

un peu plus fluide. Vous devez les supprimer avant de passer à un

environnement de production.

 

Supprimer les utilisateurs anonymes ? [O/n] o

 ... Succès !

 

Normalement, root ne devrait être autorisé à se connecter qu'à partir de "localhost". Cela

assure que personne ne peut deviner le mot de passe root à partir du réseau.

 

Interdire la connexion root à distance ? [O/n] y

 ... Succès !

 

Par défaut, MariaDB est livré avec une base de données nommée "test" que n'importe qui peut

accès. Ceci est également destiné uniquement aux tests et doit être supprimé

avant de passer à un environnement de production.

 

Supprimer la base de données de test et y accéder ? [O/n] y

 - Suppression de la base de données de test...

 ... Succès !

 - Suppression des privilèges sur la base de données de test.. .

 ... Succès !

 

Le rechargement des tables de privilèges garantira que toutes les modifications apportées jusqu'à présent

prendra effet immédiatement.

 

Recharger les tableaux de privilèges maintenant ? [O/n] o

 ... Succès !

 

Nettoyage...

 

C'est fait ! Si vous avez terminé toutes les étapes ci-dessus, votre installation de MariaDB

doit maintenant être sécurisée.

 

Merci d'utiliser MariaDB !

Afin de tester la sécurité de MariaDB, essayez de vous connecter à la base de données depuis la console sans mot de passe root. L'accès à la base de données doit être refusé si aucun mot de passe n'est fourni pour le compte root. Si le mot de passe est fourni, le processus de connexion doit être accordé à la console MySQL, comme indiqué dans la capture d'écran suivante.

mysql -h localhost -u root
mysql -h localhost -u root –p

Ensuite, connecté à la console de base de données MariaDB, créez une base de données pour l'application X-Cart et un utilisateur avec un mot de passe qui sera utilisé pour gérer la base de données de l'application, en exécutant les commandes suivantes. Remplacez le nom de la base de données, l'utilisateur et le mot de passe en conséquence.

mysql –u root -p
créer la base de données my_xcart ;
accorder tous les privilèges sur my_xcart.* à 'xcart_user' identifié par 'x_password' ;
vider les privilèges ;
quitter

Afin d'appliquer toutes les modifications apportées jusqu'à présent, redémarrez les démons MySQL et Apache et vérifiez si les démons sont en cours d'exécution en exécutant les commandes suivantes.

 systemctl redémarrer mysql apache2
systemctl statut mysql apache2

 Installer X-Cart 

Une fois que toutes les exigences du système sont remplies pour l'installation de votre boutique en ligne de commerce électronique, visitez la page de téléchargement de X-Cart à l'adresse https://www.x-cart.com/download.html à partir d'un ordinateur de bureau et téléchargez la dernière archive compressée du package zip. en remplissant le formulaire Web requis à partir de leur site Web.

Une fois le téléchargement de l'archive terminé, utilisez un protocole de transfert de fichiers, tel que scp pour copier le fichier zip téléchargé de l'ordinateur de bureau vers votre serveur Debian. Transférez le fichier zip dans le répertoire /tmp de votre serveur. Répertoriez le répertoire du serveur distant /tmp via SSH pour confirmer si le transfert de téléchargement du fichier zip s'est terminé avec succès.

scp x-cart-5.3.3.4-gb.zip [email protected]_server_IP_or_domain:/tmp
ssh  [email protected]_server_IP_or_domain 'ls /tmp'

Une fois le téléchargement de l'archive zip terminé, extrayez l'archive compressée X-Cart zip dans le répertoire /tmp et répertoriez les fichiers extraits en exécutant les commandes ci-dessous. Supprimez également le fichier index.html par défaut installé par le serveur Web Apache sur le chemin Webroot et supprimez également le fichier info.php créé précédemment.

rm /var/www/html/index.html 
rm /var/www/html/info.php
cd /tmp
décompressez x-cart-5.3.3.4-gb.zip
ls

Les fichiers d'installation de X-Cart se trouvent dans votre répertoire de travail actuel (répertoire /tmp dans ce cas) dans le répertoire xcart. Exécutez la commande ls pour répertorier les fichiers du répertoire xcart. Copiez tout le contenu du répertoire xcart dans le chemin racine du document de votre serveur Web en exécutant la commande suivante. Assurez-vous également de copier le fichier caché .htaccess dans le chemin Webroot.

cd /tmp
ls -al xcart/
cp -rf xcart/* /var/www/html/
cp xcart/.htaccess /var/www/html/

Ensuite, exécutez les commandes suivantes afin d'accorder à l'utilisateur d'exécution Apache des autorisations d'écriture complètes sur le chemin racine Web. Utilisez la commande ls pour répertorier les autorisations pour les fichiers installés de l'application situés dans le répertoire /var/www/html/.

chown -R www-data:www-data /var/www/html/
ls –al /var/www/html/

Ensuite, procédez au processus d'installation de la boutique en ligne X-Cart en ouvrant un navigateur et en naviguant sur l'adresse IP ou le nom de domaine ou le FQDN du serveur via le protocole HTTPS. Sur le premier écran d'installation, le programme d'installation de X-Cart affichera un message indiquant que X-cart n'est pas installé, comme indiqué dans l'image ci-dessous. Cliquez sur Cliquez ici lien afin de démarrer le processus d'installation.

https://votredomaine.tld

Sur l'écran d'installation suivant de X-Cart, l'assistant vous présentera le contrat de licence, comme indiqué dans l'image ci-dessous. Cochez J'accepte le contrat de licence et la politique de confidentialité et appuyez sur le bouton Suivant pour accepter la licence et continuer le processus d'installation.

Ensuite, créez un compte administrateur pour le backend de votre boutique en ligne, en fonction de votre adresse e-mail, et choisissez un mot de passe pour ce compte, comme indiqué dans la capture d'écran ci-dessous. Cliquez sur Suivant bouton pour continuer le processus d'installation.

Dans l'écran d'installation suivant, ajoutez l'adresse, le nom et les informations d'identification de la base de données MySQL créées précédemment pour la base de données X-Cart. Cochez Installer un exemple de catalogue et appuyez sur Paramètres MySQL avancés et Paramètres de serveur avancés

Dans les paramètres avancés de MySQL, laissez la valeur du port par défaut sur 3306 et le préfixe sur xc_. Faites défiler jusqu'à Paramètres avancés du serveur et ajoutez le nom d'hôte de votre serveur ou votre nom de domaine dans Nom du serveur Web et dans Nom du serveur Web sécurisé. Sélectionnez le fuseau horaire par défaut de votre magasin et appuyez sur le bouton Suivant pour terminer cette étape d'installation, comme illustré dans l'image ci-dessous.

Attendez quelques minutes que le programme d'installation configure les répertoires et remplisse le schéma de la base de données avec toutes les informations requises et que l'ensemble du processus d'installation se termine, comme indiqué dans la capture d'écran ci-dessous.

Une fois l'installation terminée, le programme d'installation affichera deux liens pouvant être utilisés pour accéder au panneau d'administration X-Cart Backend, qui sera utilisé pour gérer votre boutique en ligne, et à l'interface X-cart Online Shop (zone client) de votre boutique, qui sera affiché à vos clients.

Pour visiter l'interface de votre boutique en ligne, cliquez sur le lien Espace client et l'interface de votre application e-commerce s'affichera dans votre navigateur comme illustré dans la capture d'écran ci-dessous. Vous pouvez également visiter l'interface du magasin en accédant à l'adresse IP de votre serveur ou au nom de domaine via le protocole HTTPS.

https://votredomaine.tld

Avant de vous connecter au panneau d'administration de votre magasin, revenez d'abord à la console du serveur et exécutez les commandes suivantes pour sécuriser le fichier de configuration du système d'achat X-cart.

chmod -R 755 /var/www/html/
chmod -R 755 /var/www/html/etc/
chmod -R 644 /var/www/html/config.php
chown -R root:root /var/www/html/etc/
chown root :root /var/www/html/config.php

Afin de gérer votre boutique en ligne X-Cart, cliquez sur le lien Zone administrateur (Backoffice) afin d'accéder au backend d'administration de la boutique. Utilisez les informations d'identification configurées lors du processus d'installation pour vous connecter au panneau principal X-Cart, comme indiqué dans la capture d'écran ci-dessous.

Vous pouvez également visiter le panneau Web d'administration X-Cart en accédant à l'adresse IP ou au nom de domaine de votre serveur via le protocole HTTPS vers l'URL /admin.php.

https://votredomaine.tld/admin.php

Après vous être connecté au panneau d'administration backend X-Cart, une notification apparaîtra sur votre écran et vous informera que la version d'essai pour les entreprises expirera dans 30 jours. En outre, vous devez accéder au menu Mise à jour et installer toutes les mises à jour publiées pour l'édition actuelle de X-cart, comme illustré dans la capture d'écran ci-dessous.

Enfin, pour obliger les visiteurs à parcourir le site Web frontal X-Cart et à accéder en toute sécurité à l'interface principale via le protocole HTTPS afin de crypter le trafic entre le serveur et les navigateurs clients, retournez sur le terminal de votre serveur et modifiez le fichier .htaccess situé sur votre site Web. path, en exécutant la commande ci-dessous.

nano /var/www/html/.htaccess

Ensuite, modifiez le fichier .htaccess et, en bas du fichier, modifiez les paramètres PHP natifs avec les configurations ci-dessous. Vous pouvez modifier les paramètres PHP pour qu'ils correspondent à vos propres ressources de serveur.

.htaccess extrait de fichier :

# Modifier les paramètres PHP

php_flag register_globals désactivé
php_flag magic_quotes_gpc Désactivé
php_value max_execution_time 200
php_value max_input_time 200
php_value upload_max_filesize 500 M
php_value post_max_size 500 M

Enfin, ajoutez les règles ci-dessous pour rediriger le trafic du domaine vers HTTPS et empêcher l'accès aux répertoires d'installation et système via des requêtes Web.

# Redirection vers HTTPS

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME} /$1 [R,L]

C'est tout! Vous avez installé et configuré avec succès l'application de commerce électronique X-Cart dans Debian 9.2. Cependant, étant donné que le serveur Apache HTTP utilise des certificats auto-signés pour crypter le trafic entre le serveur et les navigateurs des visiteurs, un message d'avertissement sera toujours généré et affiché dans leurs navigateurs. Cet avertissement est mauvais pour votre entreprise de boutique en ligne. Dans ce cas, vous devez acheter un certificat émis par une autorité de certification de confiance ou obtenir une paire de certificats gratuite auprès de Let's Encrypt CA.

Pour d'autres configurations personnalisées concernant l'application X-Cart, visitez la page de documentation à l'adresse suivante :https://kb.x-cart.com/en/index.html


Debian
  1. Comment installer le serveur Redis sur Debian 11

  2. Comment installer MySQL 8.0 / 5.7 sur Debian 11 / Debian 10

  3. Comment installer Java 17 dans Debian 11

  4. Comment installer ProFTPD sur Debian 8

  5. Comment installer le serveur MySQL sur Debian 9

Comment installer Todoman sur le serveur Debian 11

Comment installer VirtualBox sur Debian 10

Comment installer OpenOffice sur Debian 10

Comment installer FastPanel sur Debian 11

Comment installer I2P sur le serveur Debian :

Comment installer VNC sur Debian 10