Android

Comment installer PrestaShop sur Ubuntu 18.04

How to Install Prestashop CMS on Ubuntu 18.10

How to Install Prestashop CMS on Ubuntu 18.10

Table des matières:

Anonim

PrestaShop est une plateforme de commerce électronique gratuite et open-source. Il est basé sur PHP et MySQL et peut être étendu avec des plugins et des thèmes gratuits et premium.

Avec des fonctionnalités telles qu'une interface administrative intuitive, plusieurs passerelles de paiement, multilingues, analytiques et de rapports, PrestaShop est une plate-forme de choix pour de nombreux marchands en ligne.

Dans ce tutoriel, nous allons vous montrer comment installer PrestaShop sur le serveur Ubuntu 18.04. Nous utiliserons Nginx comme serveur Web, le dernier PHP 7.2 et MySQL / MariaDB comme serveur de base de données.

Conditions préalables

Assurez-vous d'avoir satisfait aux conditions préalables suivantes avant de poursuivre ce didacticiel:

  • Ayez un nom de domaine pointant vers l'IP de votre serveur public. Nous utiliserons example.com .Nginx est installé sur votre serveur Ubuntu en suivant ces instructions.Un certificat SSL installé pour votre domaine pour crypter les informations de l'utilisateur. Vous pouvez installer un certificat SSL Let's Encrypt gratuit en suivant ces instructions.

Mettez à jour les packages système vers les dernières versions et installez l'utilitaire de décompression:

sudo apt update && sudo apt upgrade sudo apt install unzip

Création d'une base de données MySQL

PrestaShop stocke ses informations dans une base de données MySQL.

Si MySQL ou MariaDB est installé sur votre serveur, vous pouvez ignorer cette étape. Sinon, installez le package serveur MySQL 5.7 à partir des référentiels par défaut d'Ubuntu en tapant:

sudo apt install mysql-server mysql-client Pour les nouvelles installations MySQL, il est recommandé d'exécuter la commande mysql_secure_installation pour améliorer la sécurité de votre serveur MySQL.

Pour créer une base de données, connectez-vous au shell mysql:

sudo mysql

Depuis le shell MySQL, exécutez l'instruction SQL suivante pour créer une nouvelle base de données nommée prestashop :

CREATE DATABASE prestashop;

Ensuite, créez un compte utilisateur MySQL nommé prestashop et accordez les autorisations nécessaires à l'utilisateur en exécutant la commande suivante:

GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password'; N'oubliez pas de changer le change-with-strong-password avec un mot de passe fort par un mot de passe fort.

Une fois cela fait, quittez la console MySQL en tapant:

EXIT;

Installer et configurer PHP

PHP 7.2 est la version PHP par défaut dans Ubuntu 18.04, et il est entièrement pris en charge et recommandé pour PrestaShop.

Exécutez la commande suivante pour installer PHP et tous les modules PHP requis:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

Une fois le processus d'installation terminé, le service PHP-FPM démarre automatiquement. Vous pouvez le vérifier en tapant:

sudo systemctl status php7.2-fpm

La sortie devrait ressembler à ceci:

* php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-03-24 11:53:33 PDT; 14s ago Docs: man:php-fpm7.2(8) Main PID: 15853 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"

Exécutez les commandes sed suivantes pour définir les options PHP recommandées:

sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Téléchargement de PrestaShop

Au moment de la rédaction de cet article, la dernière version stable de PrestaShop est la version 1.7.6.2 .

Téléchargez la dernière version de PrestaShop à partir de la page de téléchargement de PrestaShop à l'aide de la commande wget suivante:

cd /tmp wget

Une fois le téléchargement terminé, créez un répertoire qui contiendra nos fichiers PrestaShop:

sudo mkdir -p /var/www/html/example.com

Ensuite, extrayez l'archive PrestaShop:

unzip prestashop_*.zip

Cette archive contient un autre fichier zip «prestashop.zip», qui contient tous les fichiers PrestaShop. Extrayez les fichiers dans le répertoire racine du document du domaine:

sudo unzip prestashop.zip -d /var/www/html/example.com

Définissez les autorisations appropriées pour que le serveur Web puisse avoir un accès complet aux fichiers et répertoires du site à l'aide de la commande chown suivante:

sudo chown -R www-data: /var/www/html

Configuration de Nginx

À présent, vous devriez déjà avoir Nginx avec un certificat SSL installé sur votre serveur Ubuntu. Sinon, vérifiez les prérequis pour ce didacticiel.

Ouvrez votre éditeur de texte et créez le fichier suivant:

sudo nano /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com

server { listen 80; listen 443 ssl http2; server_name example.com www.example.com; root /var/www/html/example.com; index index.php; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; # Cloudflare / Max CDN fix location ~* \.(eot|otf|ttf|woff(?:2)?)$ { add_header Access-Control-Allow-Origin *; } # Do not save logs for these location = /favicon.ico { auth_basic off; allow all; log_not_found off; access_log off; } location = /robots.txt { auth_basic off; allow all; log_not_found off; access_log off; } # Images rewrite ^/()(-*)?(-+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last; rewrite ^/()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last; rewrite ^/()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last; rewrite ^/()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last; rewrite ^/()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last; rewrite ^/()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last; rewrite ^/()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last; rewrite ^/()()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg last; rewrite ^/c/(+)(-*)(-+)?/.+.jpg$ /img/c/$1$2$3.jpg last; rewrite ^/c/(+)(-+)?/.+.jpg$ /img/c/$1$2.jpg last; # AlphaImageLoader for IE and fancybox rewrite ^images_ie/?(+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 last; # Web service API rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last; # Installation sandbox rewrite ^(/install(?:-dev)?/sandbox)/(.*) /$1/test.php last; #Change this block to your admin folder location /admin_CHANGE_ME { if (!-e $request_filename) { rewrite ^/.*$ /admin_CHANGE_ME/index.php last; } } # File security #.htaccess.DS_Store.htpasswd etc location ~ /\. { deny all; } # Source code directories location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor|var)/ { deny all; } # Prevent exposing other sensitive files location ~ \.(yml|log|tpl|twig|sass)$ { deny all; } # Prevent injection of php files location /upload { location ~ \.php$ { deny all; } } location /img { location ~ \.php$ { deny all; } } # PHP FPM part location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } }

N'oubliez pas de remplacer example.com par votre domaine PrestaShop et «admin_CHANGE_ME» par votre répertoire admin. Vous pouvez trouver le nom du répertoire en listant le contenu du répertoire racine Prestashop:

sudo ls -l /var/www/html/example.com | grep admin

Assurez-vous également d'utiliser le chemin d'accès correct aux fichiers de certificat SSL. Les extraits de code utilisés dans cette configuration sont créés dans ce guide.

Avant de redémarrer le service Nginx, vérifiez la configuration des erreurs de syntaxe:

sudo nginx -t

La sortie devrait ressembler à ceci:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Enfin, redémarrez le service Nginx en tapant:

sudo systemctl restart nginx

Installer PrestaShop

Maintenant que PrestaShop est téléchargé et que la configuration du serveur est terminée, vous pouvez terminer l'installation via l'interface Web.

Ouvrez votre navigateur, saisissez votre domaine et un écran similaire au suivant apparaîtra:

Pour des raisons de sécurité, vous devrez supprimer le répertoire d'installation. Pour ce faire, revenez au terminal et entrez la commande rm suivante:

sudo rm -rf /var/www/html/example.com/install

Pour accéder à votre tableau de bord administratif PrestaShop, cliquez sur le bouton «Gérer votre boutique». Saisissez votre e-mail et votre mot de passe, et vous serez redirigé vers le tableau de bord d'administration.

De là, vous pouvez commencer à personnaliser votre installation PrestaShop et ajouter de nouveaux produits.

Conclusion

Vous avez correctement installé PrestaShop sur votre serveur Ubuntu 18.04. La documentation PrestaShop est un bon point de départ pour en savoir plus sur la gestion de votre installation PrestaShop.

ubuntu prestashop mysql php nginx ecommerce