Questo tutorial passo dopo passo ti mostrerà come installare Zen Cart con Nginx su un VPS Debian 8 . Zen Cart è un software per il carrello degli acquisti basato su PHP open source. Questo tutorial è stato testato e scritto per un VPS Debian 8, ma dovrebbe funzionare su qualsiasi distribuzione Linux basata su Debian.
Assicurati che l'elenco dei pacchetti e i pacchetti del sistema operativo siano aggiornati eseguendo i seguenti comandi:
sudo apt-get update sudo apt-get upgrade
Arresta e rimuovi il servizio Apache2:
sudo service apache2 stop sudo apt-get remove apache2 sudo apt-get autoremove
Installa Nginx sul tuo server virtuale:
sudo apt-get update sudo apt-get install nginx
Configura nginx per l'avvio all'avvio:
sudo update-rc.d -f nginx defaults
Installa i moduli PHP e PHP richiesti da Zen Cart:
sudo apt-get install php5 php5-cli php5-fpm php5-mysql php5-gd php5-mcrypt sudo php5enmod mcrypt
Scarica l'ultima versione di Zen Cart su https://www.zen-cart.com/getit e caricala nella directory /opt del tuo server:
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/
Ordina qui un certificato SSL per il tuo sito e-commerce. Salva il certificato SSL e la sua chiave privata nei file denominati rispettivamente 'file.crt' e 'private.key' e caricali nella directory /etc/nginx.
Rimuovi il blocco del server Nginx predefinito, crea un nuovo file di configurazione Nginx e aggiungi il seguente blocco virtuale per il tuo nome di dominio:
rm /etc/nginx/sites-enabled/default
vi /etc/nginx/sites-available/your-domain.com.conf
e aggiungi le seguenti righe:
server {
listen 80;
# Se disponi di un certificato SSL, decommenta le 3 righe seguenti:
# listen 443 ssl;
# ssl_certificate /etc/nginx/file.crt;
# ssl_certificate_key /etc/nginx/private.key;
nome_server tuo-dominio.com www.tuo-dominio.com;
root /var/www/tuo-dominio.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;
## Disabilita .htaccess e altri file nascosti
posizione ~ /\. {
deny all;
access_log off;
log_not_found off;
}
location =/favicon.ico {
log_not_found off;
access_log off;
}
location =/robots.txt {
consenti tutto;
log_not_found;
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;
}
# scade al massimo sui contenuti statici
posizione ~* ^.+\.(jpg|jpeg|gif)$ {
access_log off;
scade 30 giorni;
}
# Posizioni inaccessibili
posizione ~ /includes/.*\.php$ { return 403; }
posizione ~ /backups { return 403; }
posizione ~ /download { return 403; }
posizione ~ /email { return 403; }
posizione ~ /media { return 403; }
posizione ~ /logs { return 403; }
# Posizioni solo le immagini devono essere pubblicate da
location ~ /sqld { try_files Nothing.txt @imagesonly; posizione ~ \.php$ { ritorno 403; } }
posizione ~ /images { try_files Nothing.txt @imagesonly; posizione ~ \.php$ { ritorno 403; } }
posizione ~ /editors { try_files Nothing.txt @imagesonly; posizione ~ \.php$ { ritorno 403; } }
location @imagesonly {
tipi {
image/gif gif;
image/jpeg jpeg jpg;
image/png png;
}
default_type application/ flusso di ottetto;
}
posizione /negozio/
{
posizione ~ -p-(?
posizione ~ -c-(?
posizione ~ -m-(?
posizione ~ -pi-(?
posizione ~ -pr-(?
posizione ~ -pri-(?
posizione ~ -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;
}
}
}
Non dimenticare di sostituire tuo-dominio.com con il tuo nome di dominio effettivo.
Abilita il nuovo file di configurazione Nginx:
ln -sf /etc/nginx/sites-available/your-domain.com.conf /etc/nginx/sites-enabled/
Apri il file /etc/php5/fpm/pool.d/www.conf e cambia la variabile 'listen' da:
listen = /var/run/php5-fpm.sock
a
listen = 127.0.0.1:9000;
Testa la configurazione di nginx:
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Quindi, riavvia i servizi php5-fpm e Nginx per rendere effettive le modifiche:
sudo service php5-fpm restart sudo service nginx restart
Imposta le autorizzazioni appropriate:
sudo chown www-data:www-data -R /var/www/your-domain.com/
Crea un nuovo database 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
Apri http://tuo-dominio.com/zc_install/index.php utilizzando un browser web e segui le semplici istruzioni:conferma l'accettazione dei termini di licenza, inserisci il nome utente, la password e il nome del database MySQL, seleziona 'Abilita SSL' e "Abilita SSL nell'area di amministrazione", fai clic su "Salva impostazioni di sistema", inserisci le informazioni sul negozio, fai clic su "Salva impostazioni negozio" e inserisci nome utente e password amministratore.
Ripristina le autorizzazioni sui file "configure.php" che si trovano nelle directory /admin/includes/ e /includes/ in modalità di sola lettura:
chmod 440 /var/www/your-domain.com/admin/includes/configure.php chmod 440 /var/www/your-domain.com/includes/configure.php
Rimuovere la directory /zc_install:
rm -rf /var/www/your-domain.com/zc_install
Inoltre, rinomina la directory "admin" con un nome meno probabile che venga "indovinato" da qualcuno che sonda il tuo sito web per un accesso illegittimo.
Ecco fatto. L'installazione di Zan Cart è completa.
Ovviamente non devi fare nulla di tutto ciò se utilizzi uno dei nostri servizi di hosting VPS Linux, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di installare Carrello Zen con Nginx per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS. Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.