Opencart è una piattaforma di eCommerce GRATUITA e open source. Tutto ciò di cui hai bisogno per creare, scalare e gestire la tua attività”. È un sistema di gestione del negozio online Open Source. È basato su PHP e utilizza un database MySQL e componenti HTML.
Apache è un popolare software per server Web che viene spesso utilizzato per fornire contenuti php. Mysql è anche un popolare sistema di gestione relazionale utilizzato da siti Web popolari.
Contenuti correlati
- Come configurare Opencart con LAMP (PHP, Apache, Mariadb) su Ubuntu 20.04
- Come installare e configurare PHP e Apache (stack LAMP) su Debian 11
- Come installare e configurare Mariadb 10 in Debian 11
- Autorizzazioni MySQL:crea, aggiorna, elimina utenti del database
- Installa lo stack Apache PHP 7.4 (LAMP) su Centos 8
- Come installare e abilitare Remi Repository in Centos 6/7/8
Prerequisiti
Per seguire, assicurati di avere quanto segue:
- Un server Debian 11 aggiornato
- Accesso root o utente con accesso sudo
- Accesso a Internet
Passaggi
Lo eseguiremo nei seguenti passaggi:
- Assicurati che il server sia aggiornato
- Installa e configura Mariadb 10 in Debian 11
- Creazione utente MySQL per Opencart
- Installa php in Debian 11
- Installazione di Apache su Debian 11
- Configurazione di Opencart nel server
- Crea un host virtuale per servire Opencart
- Esecuzione del processo di installazione di Opencart
1. Assicurati che il server sia aggiornato
Prima di procedere, è sempre buona norma assicurarsi che il server sia aggiornato. Usa questi comandi per raggiungere questo obiettivo
sudo apt update
sudo apt upgrade -y
Installa alcuni pacchetti comuni di cui avremo bisogno in seguito
sudo apt install -y vim unzip
2. Installazione di Mariadb in Debian 11
Mariadb è un popolare sistema di gestione relazionale Opensource. È disponibile nei repository predefiniti come mariadb-server
.
Installalo con questo comando:
sudo apt install -y mariadb-server
Mariadb verrà installato e avviato per impostazione predefinita in Debian 11. Controlla lo stato con questo
$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.5.12 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-12-14 05:51:32 UTC; 26s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Process: 20983 ExecStartPre=/usr/bin/install -m 755 -o mysql -g root -d /var/run/mysqld (code=exited, status=0/SUCCESS)
Process: 20984 ExecStartPre=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 20986 ExecStartPre=/bin/sh -c [ ! -e /usr/bin/galera_recovery ] && VAR= || VAR=`cd /usr/bin/..; /usr/bin/galera_recovery`; [ $? -eq>
Process: 21048 ExecStartPost=/bin/sh -c systemctl unset-environment _WSREP_START_POSITION (code=exited, status=0/SUCCESS)
Process: 21050 ExecStartPost=/etc/mysql/debian-start (code=exited, status=0/SUCCESS)
Main PID: 21034 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 14 (limit: 4626)
Memory: 78.3M
CPU: 672ms
CGroup: /system.slice/mariadb.service
└─21034 /usr/sbin/mariadbd
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: mysql
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: performance_schema
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: Phase 6/7: Checking and upgrading tables
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: Processing databases
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: information_schema
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: performance_schema
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21055]: OK
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21713]: Checking for insecure root accounts.
Dec 14 05:51:34 ip-10-2-40-188 /etc/mysql/debian-start[21720]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables
Per assicurarti che mariadb si avvii all'avvio, abilitalo con questo comando systemd:
sudo systemctl enable mariadb
Una volta che il servizio MySQL è in esecuzione, è necessario proteggerlo. Mysql fornisce un'utilità della riga di comando che lo farà:
sudo mysql_secure_installation
Il comando precedente ti guiderà attraverso i prompt per proteggere e impostare una password di root per l'istanza mysql.
Controlla maggiori informazioni sull'installazione e la configurazione di mysql in questa guida qui
3. Creazione utente MySQL per OpenCart
Si consiglia sempre di avere un utente dedicato per ogni app che si connette al DB. Dai un'occhiata a questa guida sulla gestione delle autorizzazioni MySQL qui. Imposteremo un database, un utente e una password che verranno utilizzati da Opencart:
Connettiti al server MySQL:
mysql -u root -p
Dopo aver fornito la tua password, inserisci quanto segue nel prompt di mysql:
create database opencart;
create user 'opencart_user'@'%' identified by 'S0mStrongPa$$word';
grant all privileges on opencart.* to 'opencart_user'@'%';
Ora che abbiamo configurato la nostra connessione mysql, andiamo alla sezione successiva in cui installiamo e configuriamo PHP e Nginx.
4. Installazione di PHP in Debian 11
Opencart funziona bene con PHP 7.4. Questa versione è disponibile nei repository Debian predefiniti.
Quindi installa php e le dipendenze, usa questo comando:
sudo apt install -y \
php \
php-cli \
php-gd \
php-curl \
php-zip \
php-dom \
php-xml \
php-simplexml \
php-mbstring \
php-intl \
php-json
Per ulteriori informazioni sulla configurazione di PHP e Apache, consulta questa guida qui.
5. Installazione di Apache su Debian 11
I pacchetti Apache sono disponibili nei repository Debian 11 predefiniti come apache2
. Installalo usando questo comando:
sudo apt install -y apache2
Conferma i pacchetti installati usando questo comando:
$ apt-cache policy apache2
apache2:
Installed: 2.4.51-1~deb11u1
Candidate: 2.4.51-1~deb11u1
Version table:
*** 2.4.51-1~deb11u1 500
500 http://security.debian.org/debian-security bullseye-security/main amd64 Packages
100 /var/lib/dpkg/status
2.4.48-3.1+deb11u1 500
500 http://cdn-aws.deb.debian.org/debian bullseye/main amd64 Packages
Il servizio verrà avviato per impostazione predefinita. Verifica lo stato usando questo comando:
$ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-12-14 03:01:04 UTC; 5min ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 19103 (apache2)
Tasks: 6 (limit: 4626)
Memory: 12.8M
CPU: 59ms
CGroup: /system.slice/apache2.service
├─19103 /usr/sbin/apache2 -k start
├─19105 /usr/sbin/apache2 -k start
├─19106 /usr/sbin/apache2 -k start
├─19107 /usr/sbin/apache2 -k start
├─19108 /usr/sbin/apache2 -k start
└─19109 /usr/sbin/apache2 -k start
Dec 14 03:01:04 ip-10-2-40-188 systemd[1]: Starting The Apache HTTP Server...
Dec 14 03:01:04 ip-10-2-40-188 systemd[1]: Started The Apache HTTP Server.
Per abilitare il servizio all'avvio, usa questo comando
sudo systemctl enable apache2
Per confermare che Apache sia installato e funzioni correttamente, visitare l'indirizzo IP del server nel browser (http://server_ip). Se non conosci l'IP del server, ottienilo usando questo comando nel tuo terminale:
curl -4 icanhazip.com
Se tutto va bene, dovresti vedere la Pagina predefinita di Apache2 Debian .
6. Configurazione di Opencart
Dopo aver configurato mysql, php e apache, dobbiamo scaricare il file di installazione di Opencart e impostarlo nel server. Dobbiamo creare una directory nel server in cui sarà ospitato il contenuto.
Sto per configurare Opencart per essere servito dal dominio http://opencart.citizix.com
. Poiché Apache offre contenuti da /var/www/html
, creerò la directory dei miei siti in quel /var/www
directory:
sudo mkdir /var/www/opencart.citizix.com
Assicurati che il tuo utente web abbia il permesso di leggere, scrivere ed eseguire tutte le directory nel percorso del sito:
sudo chown -R $USER:$GROUP /var/www/opencart.citizix.com
Ora consente di scaricare ed estrarre il contenuto di Opencart. Opencart utilizza github per tenere traccia delle sue versioni. Vai alla pagina delle versioni di github per Opencart qui e prendi l'ultima versione. Al momento della stesura di questo articolo, l'ultima versione è 3.0.3.8
.
Scaricalo con questo comando:
curl -LO https://github.com/opencart/opencart/releases/download/3.0.3.8/opencart-3.0.3.8.zip
Ora che il file è stato scaricato, dobbiamo estrarlo. Hai bisogno del comando zip per estrarlo.
unzip opencart-3.0.3.8.zip
Il contenuto verrà estratto nel upload
directory. Spostiamolo nel percorso del nostro sito con questo comando:
sudo mv upload/* /var/www/opencart.citizix.com/
Rinomina config-dist.php
a config.php
e admin/config-dist.php
a admin/config.php
:
cd /var/www/opencart.citizix.com/
mv config-dist.php config.php
mv admin/config-dist.php admin/config.php
7. Crea un host virtuale per servire Opencart
Ora che i pacchetti software richiesti sono stati installati e il contenuto di Opencart è stato copiato, abbiamo bisogno di un host virtuale Apache per servire il contenuto per il nostro sito http://opencart.citizix.com
.
I file Apache Virtual host specificano la configurazione di ciascun sito e indicano al server Web Apache come rispondere alle varie richieste di dominio.
Tieni presente che il DNS per il dominio da utilizzare dovrebbe essere già configurato per puntare all'indirizzo IP del server.
Confermalo con:
dig -t A opencart.citizix.com
Le configurazioni di Apache verranno archiviate nella directory /etc/httpd/conf.d/
. Creiamo una configurazione per il nostro sito:
sudo vim /etc/apache2/sites-available/opencart.citizix.com.conf
Aggiungi il seguente contenuto:
<VirtualHost *:80>
ServerName opencart.citizix.com
ServerAlias opencart.citizix.com
DocumentRoot /var/www/opencart.citizix.com
DirectoryIndex index.php
ErrorLog /var/log/apache2/opencart.citizix.com.error.log
CustomLog /var/log/apache2/opencart.citizix.com.requests.log combined
</VirtualHost>
Per applicare le modifiche, riavvia Apache:
sudo systemctl reload apache2
8. Passando attraverso il processo di installazione di Opencart
Una volta completata la configurazione di cui sopra, dovremmo essere pronti per iniziare l'installazione di opencart. Visita l'URL definito nell'host virtuale sopra per avviare il processo di configurazione. Nel mio caso, quando visito http://opencart.citizix.com
, sono accolto da questa pagina:
La pagina sopra ti chiede di accettare i termini. Fare clic su Continua per andare alla pagina successiva:
Il passaggio precedente consiste nel verificare che il server sia impostato come previsto. Se hai installato i pacchetti php richiesti sopra dovresti vedere un segno di spunta verde per ciascuno degli elementi.
Fai clic su Continua per andare al passaggio successivo:
Il passaggio precedente è dove configuri la configurazione del database e l'utente amministratore. Inserisci i dettagli richiesti e fai clic su Continua.
Se tutto va bene, verrai portato al passaggio finale che ti dice che l'installazione è riuscita:
Fino a questo punto Opencart è configurato e pronto per l'uso.
Configurazione finale
Rimuoviamo la directory di installazione nel server come consigliato dall'avviso nell'ultima pagina
cd /var/www/opencart.citizix.com/
rm -rf installation
Spostiamo la directory di archiviazione e aggiorniamo le configurazioni come mostrato in questo screenshot:
sudo mv /var/www/opencart.citizix.com/system/storage/ /var/www/storage/
Aggiorna i file di configurazione come mostrato nello screenshot.
Conclusione
Dai passaggi precedenti, siamo stati in grado di configurare il server Debian 11 per servire Opencart.