Postavite Magento 2 sa Redis, Varnish i Nginx kao SSL završetak

0

U ovom članku ćemo vam pokazati kako instalirati Magento 2 na Ubuntu 16.04 VPS sa MariaDB, PHP-FPM 7.0, Varnish kao cjelokupni keš, Nginx kao SSL terminacija i Redis za skladištenje sesija i keširanje stranica. Ovaj vodič bi trebao raditi i na drugim Linux VPS sistemima, ali je bio testiran i napisan za Ubuntu 16.04 VPS.

Prijavite se na VPS putem SSH-a

ssh [Email protected]_server

Ažurirajte sistem i instalirajte neophodne pakete

sudo apt-get update && sudo apt-get -y nadogradnja sudo apt-get -y install curl nano git

Instalirajte MariaDB 10.0

Instalirajte najnoviji MariaDB 10.0 server iz zvaničnih Ubuntu repozitorija:

sudo apt-get install -y mariadb-server

Kada je instalacija završena, pokrenite sledeću komandu da biste osigurali svoju instalaciju:

mysql_secure_installation

Zatim, potrebno je kreirati bazu podataka za našu instalaciju Magento.

mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE magento; MariaDB [(none)]> GRANT SVE PRIVILEGIJE NA MAGENTU. * TO 'magento' @ 'localhost' IDENTIFIED BY 'my_strong_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(nema)]> q

Instalirajte PHP 7.0, kompozitore i sve potrebne PHP module

Da biste instalirali najnoviju stabilnu verziju PHP 7.0-a i sve potrebne module, pokrenite:

sudo apt-get -y instalirati php-fpm php-cli php-gd php-imagick php-mysql php-mcrypt php-pear php-php-php-php php-php php-php

Promenite nekoliko podrazumevanih PHP postavki:

sudo sed -i "s / memory_limit =. * / memory_limit = 256M /" /etc/php/7.0/fpm/php.ini sudo sed -i "s / upload_max_filesize =. * / upload_max_filesize = 128M /" / etc / php /7.0/fpm/php.ini sudo sed -i "s / zlib.output_compression =. * / Zlib.output_compression = on /" /etc/php/7.0/fpm/php.ini sudo sed -i "s / max_execution_time = . * / max_execution_time = 18000 / "/etc/php/7.0/fpm/php.ini

Composer je menadžer zavisnosti za PHP sa kojim možete instalirati pakete. Kompozitor će se uključiti u sve potrebne biblioteke i zavisnosti koje su vam potrebne za vaš projekat.

curl -s https://getcomposer.org/installer | php sudo mv composer.phar / usr / local / bin / kompozitor

Instalirajte Magento 2 iz Github-a

Klonite Magento repozitorij na ~ / myMagentoSite.com direktorijum koristeći sledeću naredbu:

sudo git https://github.com/magento/magento2.git/var/www/myMagentoSite.com

Uzmite najnovije stabilno izdanje, u vrijeme pisanja je Magento 2.1.2:

cd /var/www/myMagentoSite.com
sudo git checkout $ (git opisuje --tags $ (git rev-list --tags --max-count = 1))

Pokrenite kompozitora da biste instalirali sve Magento zavisnosti:

sudo kompozitor instalirati

Da biste nastavili sa instalacijom, možete ili koristiti čarobnjaka za instalaciju ili komandnu liniju, u ovom vodiču ćemo koristiti drugu.

sudo bin / magento setup: install - baza-url = http: //myMagentoSite.com/ --db-host = localhost --db-name = magento -db-user = magento --db-password = my_strong_password - -admin-firstname = Prva --admin-lastname = Poslednja 
[Email protected] 
--admin-user = admin --admin-password = my_strong_password123 --language = hr_US --currency = USD --timezone = Amerika / Chicago --use-rewrites = 1

Ako je instalacija uspješna, videćete nešto slično:

[SUCCESS]: Ugrađena Magento instalacija. [SUCCESS]: Magento Admin URI: / admin_mejj1n

Pokrenite crontab narediti da kreirate cronjob

crontab -u www-podaci-e

i dodajte sledeću liniju:

* * * * * / usr / bin / php /var/www/myMagentoSite.com/bin/magento cron: run | grep -v "Pokrenuli posao po planu" >> /var/www/myMagentoSite.com/var/log/magento.cron.log

Na kraju, postavite ispravne dozvole:

sudo chown -R www-data: /var/www/myMagentoSite.com

Instalirajte i konfigurišite Nginx

Instalirajte Nginx iz zvaničnih Ubuntu repozitorija ::

sudo apt-get -y instaliraj nginx

Kreirajte novi Nginx server blok sa sljedećim sadržajem:

sudo nano /etc/nginx/sites-available/myMagentoSite.com
upstream fastcgi_backend {server unix: /run/php/php7.0-fpm.sock; } server {server_name myMagentoSite.com www.myMagentoSite.com; slušaj 80; postavite $ MAGE_ROOT /var/www/myMagentoSite.com; postavite $ MAGE_MODE programera; # ili proizvodnja access_log /var/log/nginx/myMagentoSite.com-access.log; error_log /var/log/nginx/myMagentoSite.com-error.log; uključi /var/www/myMagentoSite.com/nginx.conf.sample; }

Aktivirajte blok servera tako što ćete kreirati simboličku vezu:

sudo ln -s /etc/nginx/sites-available/myMagentoSite.com /etc/nginx/sites-enabled/myMagentoSite.com

Brisanje podrazumevane konfiguracije:

sudo rm -f / etc / nginx / ugrađeni sajtovi / podrazumevani

Testirajte Nginx konfiguraciju i restartujte nginx:

sudo nginx -t sudo servis nginx restart

Sada bi trebalo da se prijavite na svoj Magento back-end tako što ćete ići http://myMagentoSite.com/admin_mejj1n koristeći informacije koje ste postavili prilikom pokretanja bin / magento setup: instalirati .

Instalirajte i konfigurirajte Laki

Instaliranje laka je jednostavno kao pokretanje sledeće naredbe:

sudo apt-get instalirati lak

Od vas administratorska tabla Magento Admin klikom na link STORES (lijeva bočna traka) -> Konfiguracija -> ADVANCED -> Sistem -> Cache Cache
Neizabrani Koristi vrednost sistema i sa liste aplikacija Caching, izaberite Varni keš (preporučuje se), sačuvajte konfiguraciju, kliknite na vezu Konfiguracija laka i kliknite na Export VCL za dugme Varenje 4. The varnish.vcl fajl koji ćemo koristiti će se izvoziti u /var/www/myMagentoSite.com/var/ direktorij.

Isperite Magento keš memoriju pomoću:

sudo php bin / magento keš: flush

Obrišite /etc/varnish/default.vcl i povezati ga sa konfiguracijom izvezenog laka.

sudo rm -f /etc/varnish/default.vcl sudo ln -sf /var/www/myMagentoSite.com/var/varnish.vcl /etc/varnish/default.vcl

Da promenimo port laka sa 6081-a na 80, moramo urediti sistemsku konfiguraciju usluge.

Kreirajte novu customexec.conf fajl

sudo mkdir -p /etc/systemd/system/varnish.service.d sudo nano /etc/systemd/system/varnish.service.d/customexec.conf

nalepite sledeće:

[Servis] ExecStart = ExecStart = / usr / sbin / varnishd -j unix, user = vcache -F -a: 80 -T localhost: 6082 -f /etc/varnish/default.vcl -S / etc / varnish / s malloc, 256m

i ponovo stavite sistemske jedinice

sudo sistemctl daemon-reload

Sada moramo da promenimo Nginx port za slušanje od 80-a do 8080-a i omogućimo Nginx SSL terminaciju sa HTTP2-om, da bi to otvorili konfiguracionu datoteku Nginx i promijenili je na sledeći način:

sudo nano /etc/nginx/sites-available/myMagentoSite.com
upstream fastcgi_backend {server unix: /run/php/php7.0-fpm.sock; } server {server_name myMagentoSite.com www.myMagentoSite.com; slušaj 8080; postavite $ MAGE_ROOT /var/www/myMagentoSite.com; postaviti $ MAGE_MODE proizvodnju; # ili developer access_log /var/log/nginx/myMagentoSite.com-access.log; error_log /var/log/nginx/myMagentoSite.com-error.log; uključi /var/www/myMagentoSite.com/nginx.conf.sample; } server {slušati 443 ssl http2; server_name myMagentoSite.com www.myMagentoSite.com; ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem; # promijenite sa SSL sertifikatom ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key; # promijenite s vašim SSL ključem ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers 'AES128 + EECDH: AES128 + EDH:! aNULL'; ssl_session_cache deli: SSL: 10m; ssl_session_timeout 24h; keepalive_timeout 300s; lokacija / {proxy_pass http: // 127.0.0.1; proxy_set_header Host $ http_host; proxy_set_header X-Forwarded-Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-Za $ proxy_add_x_forwarded_for; proxy_set_header Ssl-Offloaded "1"; #proxy_hide_header X-Varnish; #proxy_hide_header Via; proxy_set_header X-Forwarded-Proto $ šema; }}

Ako već nemate SSL sertifikat, možete kupiti pouzdani SSL sertifikat STRANICI.

Restart Lak i Nginx:

sudo systemctl restart nginx sudo systemctl restart lak

Promenite osnovni url na https i ispraznite keš

sudo bin / magento podešavanje: store-config: set --base-url = "https://myMagentoSite.com" sudo php bin / magento cache: flush

Ako je sve ispravno podešeno sada, trebalo bi da budete u mogućnosti da se prijavite na svoj Magento back-end tako što ćete ići https://myMagentoSite.com/admin_mejj1n.

Instalirajte i konfigurišite keširanje Redisa

Redis je ključna vrijednost u memoriji podataka o memoriji i mi ćemo ga koristiti kako bi zamijenili zadani keš memorije Magento 2 Zend_Cache_Backend_File. Instalirajte Redis tako što ćete pokrenuti sljedeću naredbu:

apt-get instalirati php-redis redis-server

Da biste konfigurisali svoju instalaciju Magento da biste koristili Redis za skladištenje sesija, otvorite app / etc / env.php datoteku i promenite / dodajte sledeće:

sudo nano /var/www/myMagentoSite.com/app/etc/env.php

promjena:

  'session' => array ('save' => 'datoteke',),

sa:

'session' => array ('save' => 'redis', 'redis' => array ('host' => '127.0.0.1', 'port' => '6379', 'password' => '' timeout '=>' 2.5 ',' persistent_identifier '=>' ',' database '=>' 0 ',' compression_threshold '=>' 2048 ',' compression_library '=>' gzip ',' log_level '=>' 1 ',' max_concurrency '=>' 6 ',' break_after_frontend '=>' 5 ',' break_after_adminhtml '=>' 30 ',' first_lifetime '=>' 600 ',' bot_first_lifetime '=>' 60 ',' bot_lifetime ' => '7200', 'disable_locking' => '0', 'min_lifetime' => '60', 'max_lifetime' => '2592000'))

i da koristite Redis za dodavanje keša stranica:

'backend' => array ('server' => '127.0.0.1', 'port' => > '6379'),), 'page_cache' => array ('backend' => 'Cm_Cache_Backend_Redis', 'backend_options' => array ('server' => '127.0.0.1', 'port' => '6379' database '=>' 1 ',' compress_data '=>' 0 ')))),

Na kraju ponovo ispraznite keš memoriju:

sudo php bin / magento keš: flush

Dalja optimizacija

Da biste dodatno optimizirali instalaciju Magento od vas Magento admin dashboard:

1. Idite na STOROVE -> Konfiguracija -> KATALOG -> Katalog -> Koristite Katalog Katalog Katalog, izaberite Da i kliknite Sačuvaj Konfig.
2. Idite na STOROVE -> Konfiguracija -> ADVANCED -> Razvijač -> Podešavanja JavaScript-a i postavite oboje Merge JavaScript datoteke i Miniziraj JavaScript datoteke na Da i kliknite Save Config ..
3. Idite na STOROVE -> Konfiguracija -> ADVANCED -> Programer -> CSS postavke i podesite Objediniti CSS datoteke i Miniziraj CSS datoteke na Da i kliknite Sačuvaj konfiguraciju.
4. Uzmite u obzir korištenje CDN - Content Delivery Network mreže

Ne zaboravite da ispraznite keš memoriju:

sudo php bin / magento keš: flush

To je to. Magento 2 ste uspešno instalirali sa Redis-om kao skladištenjem sesije i keširanjem stranica, Lakiranjem kao cjelovito keširanje stranica i Nginx-om kao SSL završavanje na vašem Ubuntu 16.04 VPS. Za više informacija o upravljanju vašom instalacijom Magento, obratite se zvaničniku Magento dokumentacija.

izvor

Ostavite odgovor

Vaša e-mail adresa neće biti objavljena.

Ova stranica koristi Akismet kako bi smanjila neželjenu poštu. Saznajte kako se podaci vašeg komentara obrađuju.

Ova web stranica koristi kolačiće za poboljšanje vaše iskustvo. Mi ćemo pretpostaviti da ste ok sa ovom, ali možete odjaviti ako želite. prihvatiti Čitaj više