GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer OpenCart 2 avec Nginx et SSL sur Ubuntu 15.10

OpenCart est un logiciel de commerce électronique open source gratuit basé sur PHP et MySQL. OpenCart vous permet de configurer et de gérer votre propre boutique en ligne à un coût minime. Le logiciel convient aux petites et moyennes entreprises en ligne, il est facile à installer et de nombreux modules complémentaires et extensions sont disponibles. OpenCart est livré avec des traductions dans de nombreuses langues et prend en charge plusieurs devises.

Ce tutoriel couvre l'installation d'OpenCart avec Nginx, PHP-fpm et MariaDB sur Ubuntu 15.10.

Prérequis

  • Ubuntu 15.10 - 64 bits
  • Privilèges racine

Étape 1 - Installer Nginx

Nous utiliserons nginx comme serveur Web, c'est un serveur Web léger qui est rapide et a une petite empreinte mémoire. Installez nginx avec la commande apt depuis les dépôts Ubuntu :

sudo apt-get install nginx

Vérifiez maintenant Nginx avec curl ou en visitant l'IP de votre serveur avec le navigateur comme firefox etc.

curl -I 192.168.1.101

Vous devriez voir la page Ubuntu par défaut.

Étape 2 - Installer et configurer PHP-FPM

Dans cette étape, je vais installer en tant que version php-fpm, php-fpm (FastCGI Process Manager) est une alternative moderne au mode PHP FastCGI classique. Nous allons installer php-fpm avec certains modules php requis par OpenCart.

  • php-mysql
  • php-gd
  • php-curl
  • php-mcrypt

Installez PHP-FPM et l'extension PHP avec la seule commande apt ci-dessous :

sudo apt-get install php5 php5-fpm php5-mysql php5-curl php5-gd php5-mcrypt

Lorsque les packages sont installés, allez dans le répertoire de configuration de php-fpm et modifiez le 'php.ini ' fichier avec vim.

cd /etc/php5/fpm
vim php.ini

Décommentez la ligne 773 et changez la valeur en '0' :

cgi.fix_pathinfo=0

Enregistrez le fichier et quittez.

Nous devons maintenant activer le module mcrypt, qui est requis par OpenCart. Allez dans le répertoire php-fpm conf.d et créez un lien symbolique pour le fichier .ini.

cd /etc/php5/fpm/conf.d/
ln -s ../../mods-available/mcrypt.ini mcrypt.ini

Le module mcrypt est activé, redémarrez maintenant php-fpm et nginx pour appliquer les changements :

systemctl redémarrer nginx
systemctl redémarrer php5-fpm

Nous devons maintenant vérifier que php-fpm et Nginx fonctionnent correctement. Modifiez la configuration par défaut de l'hôte virtuel nginx pour activer l'emplacement php et créez un fichier phpinfo dans le répertoire racine du Web.

cd /etc/nginx/sites-available/
vim par défaut

Décommentez la directive php-fpm :

        location ~ \.php$ {
               include snippets/fastcgi-php.conf ;
        #
        #       # Avec php5-cgi seul :
        #       fastcgi_pass 127.0.0.1 :9000 ;
        #       # Avec php5-fpm :
                fastcgi_pass unix :/var/run/php5-fpm.sock ;
        }
 

Enregistrez le fichier et quittez.

Allez dans le répertoire '/var/www/html/' et ajoutez un fichier phpinfo.

cd /var/www/html/
echo ""> info.php

Accédez à l'adresse IP du serveur (dans mon cas, l'adresse IP 192.168.1.103) :http://

http:// 192.168.1.103/info.php.

Nginx et PHP-FPM sont correctement configurés.

Étape 3 - Installer et configurer MariaDB

MariaDB est un fork du serveur de base de données MySQL. Je préfère MariaDB à MySQL, mais c'est à vous de choisir le serveur de base de données que vous utilisez dans cette étape. Installez MariaDB avec la commande apt :

sudo apt-get install mariadb-server mariadb-client

Configurez ensuite le mot de passe root MariaDB / MySQL avec le 'mysql_secure_installation ' commande :

mysql_secure_installation
Définir le mot de passe root ? [O/n] O
Supprimer les utilisateurs anonymes ? [O/n] O
Interdire la connexion root à distance ? [O/n] O
Supprimer la base de données de test et y accéder ? [O/n] O
Recharger les tables de privilèges maintenant ? [O/n] O

L'utilisateur root et le mot de passe MariaDB ont été configurés. Nous devons maintenant créer une nouvelle base de données et un nouvel utilisateur pour notre installation OpenCart. Connectez-vous au shell mysql/mariadb pour tout créer.

Connectez-vous au shell MySQL/MariaDB pour créer la base de données et l'utilisateur.

mysql -u root -p
TAPEZ VOTRE MOT DE PASSE

créez une base de données opencartdb ;
créez un utilisateur [email protected] identifié par '[email protected]' ;
accorder tous les privilèges sur opencartdb.* à [email protected] identifié par '[email protected]' ;
vider les privilèges ;

La base de données MySQL est créée, nous avons une nouvelle base de données nommée 'opencartdb' et un utilisateur avec le nom 'opencartuser' et le mot de passe '[email protected]'. Nous avons besoin de connaître ces détails pour l'installation d'OpenCart plus tard. Veuillez utiliser un mot de passe plus sécurisé pour votre installation.

Étape 4 - Installer SSL

Assurez-vous qu'OpenSSL est installé sur votre serveur.

sudo apt-get install openssl

Créez un nouveau répertoire pour le certificat SSL et générez le certificat avec OpenSSL.

mkdir -p /etc/nginx/ssl
cd /etc/nginx/ssl

Générez le certificat et le fichier de clé :

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/opencart.key -out /etc/nginx/ssl/opencart.crt

Modifiez l'autorisation de la clé privée à 600 :

chmod 600 opencart.key

L'installation du certificat SSL est terminée.

Étape 5 - Configurer le VirtualHost pour OpenCart

Créez un nouveau fichier de configuration d'hôte virtuel pour OpenCart dans le répertoire "sites-available" de Nginx. Accédez au répertoire de l'hôte virtuel Nginx et créez une nouvelle configuration avec vim :

cd /etc/nginx/sites-available/
vim opencart

Collez la configuration ci-dessous :

serveur {
    nom_serveur www.myopencart.co ; ## Votre domaine
    racine /var/www/opencart/upload ; ## Répertoire racine Web
    index index.php index.html ;

    listen 80 ;
    listen [::]:80 ;
    listen 443 default ssl ;

    ssl_certificate      /etc/nginx/ssl/opencart.crt ;
    ssl_certificate_key  /etc/nginx/ssl/opencart.key ;

    # Rediriger HTTP vers HTTPS
    if ($scheme =http) {
        return 301 https://$server_name$request_uri;
    }

    access_log /var/log/nginx/myopencart_access.log ;

    emplacement /image/données {
        indexation automatique activée ;
    }
    emplacement /admin {
        index index.php ;
    }
    }
    emplacement / {
        try_files $uri @opencart ;
    }
    emplacement @opencart {
        réécrire ^/(.+)$ /index.php?_route_=$1 dernier ;
    }
    
    # Assurez-vous que les fichiers avec les extensions suivantes ne sont pas chargés par nginx car nginx afficherait le code source, et ces fichiers peuvent contenir des MOTS DE PASSE !
    location ~* \ .(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.* |Repository|Root|Tag|Template)$|\.php_ {
        deny all ;
    }
    # Refuser toutes les tentatives d'accès aux fichiers cachés tels que .htaccess, .htpasswd, .DS_Store ( Mac).
    emplacement ~ /\. {
        tout refuser ;
        access_log off ;
        log_not_found off ;
    }
    emplacement ~*  \.(jpg|jpeg|png|gif|css|js|ico )$ {
        expire max ;
        log_not_found off ;
    }
    location ~ \.php$ {
        try_files $uri =404 ;
        fastcgi_pass unix :/var/run/php5-fpm.sock ;
        fastcgi_index index.php ;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ;
        inclure fastcgi_params ;
    }
}

Remplacez le nom de domaine dans la ligne server_name par votre propre nom de domaine.

Enregistrez le fichier et quittez.

Activez le nouvel hôte virtuel avec un lien symbolique vers le fichier 'opencart' dans le répertoire 'sites-enabled' et vérifiez la syntaxe de configuration Nginx avec la commande "nginx -t".

ln -s /etc/nginx/sites-available/opencart /etc/nginx/sites-enabled/
nginx -t

Étape 6 - Installer et configurer OpenCart

Nous utilisons le répertoire '/var/www/' pour l'installation d'OpenCart. Allez dans le répertoire '/var/www/', téléchargez OpenCart et extrayez l'archive .zip téléchargée.

Vous pouvez télécharger opencart à partir d'ici :http://www.opencart.com/?route=download/download.

cd /var/www/
décompressez opencart-2.1.0.1.zip

Renommez le répertoire en opencart, puis accédez au répertoire de téléchargement.

mv opencart-opencart-2.1.0.1/ opencart/
cd opencart/upload/

Copiez les fichiers config-dist dans les répertoires upload et admin :

cp config-dist.php config.php
cp admin/config-dist.php admin/config.php

Et de retour au répertoire '/var/www/', changez le propriétaire des fichiers et répertoires OpenCart en utilisateur 'www-data '.

cd /var/www/
chown -R www-data:www-data opencart/

Remarque :Nous exécutons nginx en tant qu'utilisateur et groupe www-data. Si vous exécutez nginx en tant que votre propre utilisateur ou utilisateur Nginx, remplacez le propriétaire par votre propre nom et groupe.

Redémarrez nginx et php-fpm pour vous assurer que nous n'avons pas d'erreur sur la configuration que nous avons configuré :

systemctl redémarrer nginx
systemctl redémarrer php5-fpm

Maintenant, ouvrez votre navigateur Web et entrez votre domaine opencart dans la barre d'adresse, mon nom de domaine dans cet exemple est :  www.myopencart.co .

Le programme d'installation vous montrera le "Contrat de licence " Lisez-le et cliquez sur "Continuer ".

Le programme d'installation vérifie maintenant la configuration de votre serveur, assurez-vous que tous les champs d'état sont "Vert " puis cliquez sur "Continuer ".

Le programme d'installation affichera la configuration de la base de données et du compte administrateur. Remplissez les détails de la base de données que nous avons créée précédemment et choisissez un nom d'utilisateur et un mot de passe d'administrateur, puis cliquez sur "Continuer ".

L'installation d'OpenCart est terminée, vous pouvez visiter le domaine de votre boutique en ligne (dans mon cas www.myopencart.co) et vous connecter au backend OpenCart.

N'oubliez pas de supprimer le répertoire d'installation sur le serveur .

cd /var/www/opencart/upload/
rm -rf install/

Opencart avec Nginx et php-fpm est installé et fonctionne

Conclusion

Opencart est une application Web écrite en PHP pour créer des magasins en ligne. Il convient aux magasins en ligne de petite et moyenne taille. Opencart peut être installé avec des serveurs Web Apache ou Nginx (avec php-fpm), ce tutoriel a couvert l'installation d'OpenCart avec la base de données nginx, php-fpm et MariaDB (un fork de MySQL). Le processus d'installation est simple, il vous suffit de vous assurer que votre serveur est prêt pour OpenCart comme nous l'avons fait dans le premier chapitre de ce tutoriel.


Ubuntu
  1. Comment installer Nextcloud avec Nginx et Lets Encrypt SSL sur Ubuntu 20.04 LTS

  2. Comment installer Magento 2 avec Nginx et Lets Encrypt SSL sur Ubuntu 20.04 LTS

  3. Comment installer Mattermost avec PostgreSQL et Nginx sur Ubuntu 16.04

  4. Comment installer Nginx avec PHP5 et MySQL sur Ubuntu 11.10

  5. Installez OpenCart 2 sur un VPS Ubuntu 14.04 avec Nginx et PHP-FPM

Comment installer Piwik avec Nginx sur Ubuntu 15.10

Comment installer Drupal 8.1 avec Nginx, PHP-FPM et SSL sur Ubuntu 16.04

Comment installer Redmine 3.2 avec Nginx sur Ubuntu 16.04

Comment installer Django avec PostgreSQL et Nginx sur Ubuntu 16.04

Comment installer Lighttpd avec PHP-FPM 7 et MySQL 5.7 sur Ubuntu 18.04 LTS

Comment installer Moodle avec Nginx et Lets Encrypt SSL sur Ubuntu 20.04