Ce tutoriel étape par étape vous montrera comment installer Zen Cart avec Nginx sur un VPS Debian 8 . Zen Cart est un logiciel de panier d'achat open source basé sur PHP. Ce tutoriel a été testé et écrit pour un VPS Debian 8, mais il devrait fonctionner sur n'importe quelle distribution Linux basée sur Debian.
Assurez-vous que votre liste de packages et les packages du système d'exploitation sont à jour en exécutant les commandes suivantes :
sudo apt-get update sudo apt-get upgrade
Arrêtez et supprimez le service Apache2 :
sudo service apache2 stop sudo apt-get remove apache2 sudo apt-get autoremove
Installez Nginx sur votre serveur virtuel :
sudo apt-get update sudo apt-get install nginx
Configurez nginx pour qu'il démarre au démarrage :
sudo update-rc.d -f nginx defaults
Installez PHP et les modules PHP requis par Zen Cart :
sudo apt-get install php5 php5-cli php5-fpm php5-mysql php5-gd php5-mcrypt sudo php5enmod mcrypt
Téléchargez la dernière version de Zen Cart sur https://www.zen-cart.com/getit et téléchargez-la dans le répertoire /opt de votre serveur :
cd /opt/ wget http://downloads.sourceforge.net/project/zencart/CURRENT%20-%20Zen%20Cart%201.5.x%20Series/zen-cart-v1.5.4-12302014.zip unzip zen-cart-v1.5.4-12302014.zip mv zen-cart-v1.5.4-12302014 /var/www/zen-cart/
Commandez ici un certificat SSL pour votre site e-commerce. Enregistrez le certificat SSL et sa clé privée dans des fichiers nommés respectivement "file.crt" et "private.key" et téléchargez-les dans le répertoire /etc/nginx.
Supprimez le bloc de serveur Nginx par défaut, créez un nouveau fichier de configuration Nginx et ajoutez le bloc virtuel suivant pour votre nom de domaine :
rm /etc/nginx/sites-enabled/default
vi /etc/nginx/sites-available/your-domain.com.conf
et ajoutez les lignes suivantes :
server {
listen 80 ;
# Si vous avez un certificat SSL, décommentez les 3 lignes ci-dessous :
# listen 443 ssl ;
# ssl_certificate /etc/nginx/file.crt;
# ssl_certificate_key /etc/nginx/private.key;
nom_serveur votre-domaine.com www.votre-domaine.com ;
racine /var/www/votre-domaine.com;
index index.html index.htm index.php index.cgi index.pl index.xhtml;
error_page 400 /error/400.html;
error_page 401 /error/401.html;
error_page 403 /error/403.html;
error_page 404 /error/404.html;
error_page 405 /error/405.html;
error_page 500 /error/500.html;
error_page 502 /error/502.html;
error_page 503 /error/503.html;
access_log /var/log/nginx/your-domain.com-access.log;
error_log /var/log/nginx/your-domain.com-error.log;
charset en_us.UTF-8;
## Désactivez .htaccess et les autres fichiers cachés
emplacement ~ /\. {
tout refuser ;
access_log off ;
log_not_found off ;
}
location =/favicon.ico {
log_not_found off ;
access_log off ;
}
location =/robots.txt {
tout autoriser ;
log_not_found off ;
access_log off ;
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ;
fastcgi_intercept_errors on ;
}
# expire max on static content
location ~* ^.+\.(jpg|jpeg|gif)$ {
access_log off ;
expire 30d ;
}
# Emplacements inaccessibles
location ~ /includes/.*\.php$ { return 403; }
emplacement ~ /sauvegardes { return 403 ; }
emplacement ~ /download { return 403 ; }
lieu ~ /email { return 403; }
emplacement ~ /media { return 403 ; }
emplacement ~ /logs { return 403 ; }
# Emplacements uniquement les images doivent être diffusées depuis
emplacement ~ /sqld { try_files nothing.txt @imagesonly; emplacement ~ \.php$ { return 403; } }
emplacement ~ /images { try_files rien.txt @imagesonly ; emplacement ~ \.php$ { return 403; } }
emplacement ~ /editors { try_files rien.txt @imagesonly ; emplacement ~ \.php$ { return 403; } }
location @imagesonly {
types {
image/gif gif;
image/jpeg jpeg jpg;
image/png png;
}
default_type application/ octet-stream ;
}
emplacement /shop/
{
emplacement ~ -p-(?
emplacement ~ -c-(?
location ~ -m-(?
emplacement ~ -pi-(?
location ~ -pr-(?
location ~ -pri-(?
emplacement ~ -ezp-(?
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ;
fastcgi_intercept_errors on ;
}
}
}
N'oubliez pas de remplacer votre-domaine.com par votre nom de domaine actuel.
Activez le nouveau fichier de configuration Nginx :
ln -sf /etc/nginx/sites-available/your-domain.com.conf /etc/nginx/sites-enabled/
Ouvrez le fichier /etc/php5/fpm/pool.d/www.conf et changez la variable ‘listen’ de :
listen = /var/run/php5-fpm.sock
à
listen = 127.0.0.1:9000;
Testez la configuration nginx :
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Ensuite, redémarrez les services php5-fpm et Nginx pour que les modifications prennent effet :
sudo service php5-fpm restart sudo service nginx restart
Définissez les autorisations appropriées :
sudo chown www-data:www-data -R /var/www/your-domain.com/
Créez une nouvelle base de données MySQL :
mysql -u root -p mysql> create database zencartdb; mysql> GRANT ALL PRIVILEGES ON zencartdb.* TO 'zencart'@'localhost' IDENTIFIED BY 'Y0UR-PASSW0RD'; mysql> flush privileges; mysql> quit
Ouvrez http://votre-domaine.com/zc_install/index.php à l'aide d'un navigateur Web et suivez les instructions simples :confirmez votre acceptation des termes de la licence, entrez le nom d'utilisateur, le mot de passe et le nom de la base de données MySQL, sélectionnez "Activer SSL" et 'Activer SSL dans la zone d'administration', cliquez sur 'Enregistrer les paramètres système', entrez les informations du magasin, cliquez sur 'Enregistrer les paramètres du magasin' et entrez le nom d'utilisateur et le mot de passe de l'administrateur.
Réinitialisez les autorisations sur les fichiers "configure.php" situés dans les répertoires /admin/includes/ et /includes/ en mode lecture seule :
chmod 440 /var/www/your-domain.com/admin/includes/configure.php chmod 440 /var/www/your-domain.com/includes/configure.php
Supprimez le répertoire /zc_install :
rm -rf /var/www/your-domain.com/zc_install
En outre, renommez le répertoire "admin" en un nom moins susceptible d'être "deviné" par quelqu'un qui sonde votre site Web pour un accès illégitime.
C'est ça. L'installation de Zan Cart est terminée.
Bien sûr, vous n'avez rien à faire si vous utilisez l'un de nos services d'hébergement VPS Linux, auquel cas vous pouvez simplement demander à nos administrateurs Linux experts d'installer Panier Zen avec Nginx pour toi. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande.
PS. Si vous avez aimé cet article, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.