Hvordan installere Magento med NGINX og Letsencrypt

Bilde: Jack Wallen

I dagens verden kan du ikke risikere å servere selskapets nettsteder uten ekstra lag med sikkerhet. Jeg har demonstrert hvordan du installerer Magento e-handelsløsning med Apache på Ubuntu Server 18.04 (se: Hvordan installere Magento på Ubuntu 18.04). Den spesielle installasjonen fungerer bra, men den kommer med en pris: No Secure Sockets Layer (SSL).

Datasenter må leses

  • 8 datasenterprognoser for 2020
  • 7 nettverksvarslinger for 2020: Automatisering, edge computing, Wi-Fi 6, mer
  • Beste praksis for server virtualisering og tips om hva du ikke skal gjøre
  • Kvanteberegning: Syv sannheter du trenger å vite

Jeg vil lede deg gjennom en annen installasjonssti, en som inkluderer HTTPS. Denne prosessen velger NGINX (over Apache) og bruker letsencrypt for SSL.

Hva trenger du

Det eneste du trenger for denne installasjonen er:

  • En Ubuntu Server 18.04 installasjon og kjører.
  • Et fullt kvalifisert domenenavn (FQDN).
  • En brukerkonto med sudo-rettigheter.

Jeg vil demonstrere oppsettet ved å bruke domenet example.com. Du må erstatte FQDN hvor som helst du ser eksempel.com.

Og med det, la oss installere.

Oppdatering / oppgradering

Først må du oppdatere og oppgradere serveren din. Vær oppmerksom på at hvis kjernen blir oppdatert i prosessen, vil det være nødvendig med en omstart av serveren. På grunn av dette, kjør oppdaterings- / oppgraderingsprosessen i løpet av en tid der en oppdatering er mulig.

Hvis du vil kjøre oppdaterings- / oppgraderingsprosessen, logger du på Ubuntu-serveren og utgir følgende kommando:

 sudo apt-update sudo apt-get upgrade -y 

Skulle kjernen din bli oppgradert, start serveren på nytt og gjør deg klar til å installere.

Nginx

Deretter må vi installere NGINX-webserveren. Tilbake i terminalvinduet, gi følgende kommando:

 sudo apt-get install nginx -y 

Når installasjonen er fullført, starter og aktiverer du webserveren med følgende kommandoer:

 sudo systemctl start nginx sudo systemctl aktivere nginx 

PHP-komponenter

Det er en rekke PHP-komponenter som må installeres. For å gjøre dette må du først installere et tredjeparts depot. Gjør dette med følgende kommandoer:

 sudo apt installer programvareegenskaper-vanlig -y sudo add-apt-repository ppa: ondrej / php -y sudo apt-get-oppdatering 

Installer PHP-komponentene med kommandoen:

 sudo apt install php7.1-fpm php7.1-mcrypt php7.1-curl php7.1-cli php7.1-mysql php7.1-gd php7.1-xsl php7.1-json php7.1-intl php- pear php7.1-dev php7.1-common php7.1-mbstring php7.1-zip php7.1-soap php7.1-bcmath -y 

Før du fortsetter, må PHP konfigureres. Det er to filer som må endres:

  • /etc/php/7.1/fpm/php.ini
  • /etc/php/7.1/cli/php.ini

For hver fil gjør du følgende konfigurasjonsredigeringer:

 memory_limit = 512M max_execution_time = 180 zlib.output_compression = På 

Start og aktiver PHP FPM med følgende kommandoer:

 sudo systemctl omstart php7.1-fpm sudo systemctl aktiver php7.1-fpm 

MySQL server

Magento er avhengig av MySQL-serveren. Installer denne pakken med kommandoen:

 sudo apt installere mysql-server mysql-client -y 

Start og aktiver tjenesten med kommandoene:

 sudo systemctl start mysql sudo systemctl aktiver mysql 

Sikre MySQL-installasjonen med kommandoen:

 sudo mysql_secure_installation 

Sørg for å opprette et sterkt / unikt passord for MySQL admin-brukeren og svar "ja" for de resterende spørsmålene.

Det er på tide å lage den nødvendige databasen. Logg på MySQL-ledeteksten med kommandoen:

 sudo mysql -u rot -p 

Opprett databasen og en ny bruker med kommandoene:

 SKAP DATABASE magentodb; LAG BRUKER 'magentouser' @ 'localhost' IDENTIFISERT AV 'PASSWORD'; TILGJØR ALLE PRIVILEGIER PÅ magentodb. * TIL 'magentouser' @ 'localhost' IDENTIFISERT AV 'PASSWORD'; FLUSH PRIVILEGES; exit 

der PASSORD er et sterkt / unikt passord.

PHP-komponist

PHP Composer må også installeres. For dette, gi kommandoen:

 sudo apt install composer -y 

Klone og installer Magento

La oss ta tak i den nyeste versjonen av Magento. For å gjøre dette, installer først git (hvis ikke allerede installert) med kommandoen:

 sudo apt-get install git-y 

Klone Magento med kommandoen:

 git klon https://github.com/magento/magento2.git 

Bytt til den nyopprettede katalogen med kommandoen cd magento2 og installer Magento med kommandoen:

 sudo komponist installere -v 

SSL

Det er nå på tide å generere SSL-sertifikatene våre. Før vi kan gjøre dette, må vi først installere Letsencrypt. Gjør dette med kommandoen:

 sudo apt install letsencrypt -y 

Etter at installasjonen er fullført, stopp NGINX med:

 sudo systemctl stop nginx 

Generer SSL-sertifikatet med kommandoen:

 sudo certbot certonly --standalone -d example.com 

Når kommandoen ovenfor er fullført, vil sertifikatene bli plassert i /etc/letsencrypt/live/example.com/ (der example.com er din FQDN).

Konfigurer NGINX

Lag en ny konfigurasjonsfil med kommandoen:

 sudo nano / etc / nginx / nettsteder tilgjengelig / magento 

Lim inn følgende i den filen (husk å erstatte eksempel.com med FQDN):

 oppstrøms fastcgi_backend {server unix: /run/php/php7.1-fpm.sock; } server {listen 80; hør ::: 80; servernavn eksempel.com; retur 301 https: // $ servernavn $ request_uri; } server {listen 443 ssl; servernavn eksempel.com; ssl på; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; sett $ MAGE_ROOT / var / www / magento2; angi $ MAGE_MODE-utvikler; inkludere /var/www/magento2/nginx.conf.sample; } 

Lagre og lukk den filen.

Aktiver det nyopprettede nettstedet med kommandoen:

 sudo ln -s / etc / nginx / sites-available / magento / etc / nginx / sites-enabled / 

Start NGINX på nytt med kommandoene:

 sudo systemctl omstart php7.1-fpm sudo systemctl start nginx 

Endelig, endre eierforholdet til magento2-katalogen med kommandoen:

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

Du kan nå peke nettleseren din til https: // FQDN (der FQDN er ditt fullt kvalifiserte domenenavn) og fullføre Magento-oppsettet, via det nettbaserte verktøyet.

Klar til å servere

Og det er alt som er for å sette opp Magento e-handelsløsning med NGINX og SSL. Hvis du planlegger å selge produkter for din virksomhet, skylder du det til selskapet og kundene å gjøre det over en sikker HTTP (ellers risikerer du integriteten til sikkerheten og omdømmet ditt).

Datasenter Trender Nyhetsbrev

DevOps, virtualisering, hybridsky, lagring og driftseffektivitet er bare noen av datasentertemaene vi vil trekke frem. Leveres mandager og onsdager

Registrer deg i dag

© Copyright 2021 | pepebotifarra.com