Jak skonfigurować Magento z Nginx i Cloudflare CDN / SSL na Ubuntu 16.04 | 18.04

  • Yurii Anneticus
  • 0
  • 3879
  • 702

Kilka dni temu pokazaliśmy, jak skonfigurować Magento 2 z Apache2 i PHP 7.2 na Ubuntu 16.04 | 18.04… Cóż, ten post pokazuje, jak skonfigurować Magento z Nginx i PHP 7.2-FPM… Dla tych, którzy wolą Nginx…

Magento 2, bezpłatna (edycja społecznościowa) i potężna platforma eCommerce do prowadzenia sklepu internetowego, działa świetnie po zainstalowaniu… Jednak aby zapewnić swoim uczniom i użytkownikom najlepsze wrażenia, możesz rozważyć użycie Cloudflare CDN, SSL i ochrona…

Cloudflare zapewnia bezpłatne i płatne funkcje, które pomagają przyspieszyć działanie witryn internetowych, oferuje bezpłatne usługi CDN i SSL, które chronią miliony witryn i domen online oraz wiele innych…

Jeśli jesteś studentem lub nowym użytkownikiem korzystającym z Magento i chcesz skorzystać ze wszystkich wspaniałych funkcji oferowanych przez Cloudflare, poniższe kroki powinny pomóc Ci to osiągnąć…

Ten krótki samouczek pokaże studentom i nowemu użytkownikowi krok po kroku, jak skonfigurować witryny Magento i korzystać z CDN Cloudflare, bezpłatnego protokołu SSL i funkcji bezpieczeństwa, aby poprawić wydajność ich witryn i chronić ich witryny przed złośliwymi aktorami…

Ta konfiguracja może trochę potrwać, a poniższy proces powinien działać również w innych witrynach internetowych… To nie musi być Magento… Ta konfiguracja powinna działać na innych systemach CMS i zwykłych witrynach HTML po wyjęciu z pudełka… Kiedy będziesz gotowy aby skonfigurować Magento i Cloudflare, wykonaj poniższe czynności:

Krok 1: Zarejestruj konto Cloudflare…

Pierwszym krokiem w tym samouczku jest zarejestrowanie się w usłudze Cloudflare… Zakłada się, że zarejestrowałeś już nazwę domeny… Jeśli tego nie zrobisz, idź i zdobądź ją, zanim przejdziesz dalej…

Gdy masz już nazwę domeny, kliknij poniższy link, aby zarejestrować się w Cloudflare…

https://dash.cloudflare.com/sign-up

Wpisz swój adres e-mail i kliknij Utwórz konto

Po utworzeniu konta i zweryfikowaniu adresu e-mail oraz ponownym zalogowaniu się na konto Cloudflare kliknij przycisk lub łącze (Dodaj witrynę), aby dodać witrynę do swojego konta…

Następnie wpisz nazwę domeny, którą zarejestrowałeś… Usługa Cloudflare pomoże przyspieszyć i zabezpieczyć dodaną witrynę…

Następnie Cloudflare rozpocznie wysyłanie zapytań do dostawcy DNS Twojej domeny o rekordy w tabeli DNS… Jeśli domena jest online, Cloudflare powinien ją znaleźć i zaimportować rekordy na Twoje konto Cloudflare…

Następnie wybierz plan, którego chcesz użyć dla witryny… W tym samouczku będziemy używać bezpłatnego planu Cloudflare…

Kiedy skończysz, powinieneś zobaczyć dwa serwery nazw dostarczone przez Cloudflare… Co musisz zrobić, to zalogować się do portalu dostawcy domeny… gdzie masz swoją domenę… i zamienić serwery nazw na te, które daje Ci Cloudflare…

Na przykład nasz example.com witryna jest hostowana przez Google Domains… więc zalogujemy się na nasze konto Google Domains i użyjemy niestandardowych serwerów nazw… Następnie użyjemy serwerów nazw dostarczonych przez Cloudflare i zapiszemy…

Po zapisaniu zmian w niestandardowych serwerach nazw wróć do konta Cloudflare i poczekaj, aż Cloudflare zobaczy zmiany…. W zależności od dostawcy domeny może minąć nawet godzina, zanim Cloudflare będzie widoczne…

Gdy wszystko będzie gotowe, stan witryny zostanie wyświetlony jako Aktywny

Kiedy wszystko zostanie zrobione, powinieneś również zobaczyć swoje konto Cloudflare z wpisami DNS, jak pokazano poniżej… Twoje rekordy DNS mogą mieć więcej wpisów niż dwa poniżej… ale te dwa są najważniejsze dla prowadzenia Twojej witryny… .

Następnie kliknij Crypto i wybierz opcję włączenia Pełna (ścisła) SSL… Powinno to włączyć SSL w witrynie…

Wciąż pod Crypto przewiń w dół do Świadectwa pochodzenia… Następnie kliknij przycisk, aby utworzyć certyfikat…

Użyj bezpłatnego certyfikatu TLS podpisanego przez Cloudflare, aby zainstalować na swoim serwerze pochodzenia… Certyfikaty Origin są ważne tylko do szyfrowania między Cloudflare a serwerem pochodzenia…

Następnie wybierz Niech Cloudflare wygeneruje klucz prywatny i CSR dla domeny… Kliknij Dalej…

Następnie skopiuj i wklej je do pliku tekstowego na swoim serwerze…

W systemie Ubuntu uruchom poniższe polecenia, aby utworzyć plik klucz, certyfikat i źródłowe pliki ściągania… Skopiuj i wklej każdą zawartość do odpowiedniego pliku… i zapisz…

Dla plik klucza… Uruchom to, a następnie skopiuj i wklej klucz do pliku i zapisz…

sudo nano /etc/ssl/private/cloudflare_example.com.pem

Dla plik certyfikatu, uruchom to i skopiuj i wklej zawartość certyfikatu do pliku i zapisz…

sudo /etc/ssl/certs/cloudflare_example.com.pem

Będziesz także chciał pobrać certyfikat Cloudflare Origin Pull… Możesz go pobrać z poniższego łącza:

https://support.cloudflare.com/hc/en-us/articles/204899617-Authenticated-Origin-Pulls#section6

Uruchom poniższe polecenia, aby je pobrać…

cd / etc / ssl / certs / sudo wget https://support.cloudflare.com/hc/en-us/article_attachments/201243967/origin-pull-ca.pem

Następnie powinieneś mieć trzy pliki… klucz serwera, certyfikat serwera i certyfikat pochodzenia

Użyjemy tego pliku w konfiguracji Nginx poniżej

Po zapisaniu klucz, certyfikat i pull pochodzenia pliki certyfikatów… kontynuuj poniżej…

Wciąż pod, Kryptao włącz Zawsze używaj protokołu HTTPS Możesz także zmienić ustawienia dla HSTS ale nie jest konieczne…

Następnie włącz Uwierzytelnione źródła pochodzenia i Szyfrowanie oportunistyczne, i kontynuuj…

Następnie włącz Automatyczny HTTPS Przepisuje i kontynuuj…

Następnie przejdź do Prędkość kartę, włącz Automatyczne zmniejszanie dla JavaScript, CSS i HTML… i kontynuuj

Następnie przejdź do Zasady strony tab… następnie utwórz nową regułę dla serwisu… następnie wpisz URL i wybierz Zawsze używaj protokołu HTTPS

http: // * example.com/*

Alwyas Użyj HTTPS

Zapisz swoje ustawienia i gotowe, aby skonfigurować Cloudflare…

Krok 2: Zainstaluj i skonfiguruj Magento

Teraz, gdy Cloudflare jest skonfigurowany, zaloguj się na swój serwer i skonfiguruj Magento… Najpierw zainstaluj serwer HTTP Nginx, ponieważ używamy Nginx w tym poście… Aby zainstalować serwer Nginx, uruchom poniższe polecenia:

sudo apt update sudo apt install nginx

Po zainstalowaniu Nginx poniższe polecenia mogą służyć do zatrzymywania, uruchamiania i włączania usługi Nginx, aby zawsze uruchamiała się wraz z uruchomieniem serwera…

sudo systemctl stop nginx.service sudo systemctl start nginx.service sudo systemctl włącz nginx.service 

Teraz, gdy Nginx jest zainstalowany…. aby sprawdzić, czy serwer WWW działa, otwórz przeglądarkę i przejdź do adresu URL poniżej…

https: // localhost

Jeśli widzisz powyższą stronę, oznacza to, że Nginx został pomyślnie zainstalowany…

Krok 3: Zainstaluj serwer bazy danych MariaDB

Magento wymaga również serwera bazy danych do przechowywania swojej zawartości… Jeśli szukasz prawdziwie otwartego serwera bazy danych, MariaDB to świetne miejsce na rozpoczęcie… Aby zainstalować MariaDB, wykonaj poniższe polecenia:

sudo apt-get install mariadb-server mariadb-client

Po zainstalowaniu MariaDB poniższe polecenia mogą służyć do zatrzymywania, uruchamiania i włączania usługi MariaDB, aby zawsze była uruchamiana po uruchomieniu serwera…

Uruchom je na Ubuntu 16.04 LTS

sudo systemctl stop mysql.service sudo systemctl start mysql.service sudo systemctl włącz mysql.service 

Uruchom je na Ubuntu 19.04 i 18.04 LTS

sudo systemctl stop mariadb.service sudo systemctl start mariadb.service sudo systemctl włącz mariadb.service 

Następnie uruchom poniższe polecenia, aby zabezpieczyć serwer bazy danych hasłem root, jeśli nie został wyświetlony monit o zrobienie tego podczas instalacji…

sudo mysql_secure_installation

Po wyświetleniu monitu odpowiedz na poniższe pytania, postępując zgodnie z instrukcjami.

  • Wprowadź aktualne hasło roota (wpisz żadnego): Po prostu naciśnij Enter
  • Ustawić hasło roota? [T / n]: Y
  • Nowe hasło: wprowadź hasło
  • Ponownie wprowadź nowe hasło: powtórz hasło
  • Usunąć anonimowych użytkowników? [T / n]: Y
  • Nie zezwalać na zdalne logowanie przez roota? [T / n]: Y
  • Usunąć testową bazę danych i uzyskać do niej dostęp? [T / n]: Y
  • Załadować teraz ponownie tabele uprawnień? [T / n]: Y

Teraz, gdy MariaDB jest już zainstalowana, aby sprawdzić, czy serwer bazy danych został pomyślnie zainstalowany, uruchom poniższe polecenia…

sudo mysql -u root -p

wpisz hasło roota po wyświetleniu monitu…

Jeśli zobaczysz podobny ekran, jak pokazano powyżej, serwer został pomyślnie zainstalowany…

Krok 4: Zainstaluj PHP 7.2 i powiązane moduły

Magento CMS jest systemem CMS opartym na PHP i PHP jest wymagane… Jednak PHP 7.2 może nie być dostępne w domyślnych repozytoriach Ubuntu… Aby uruchomić PHP 7.2 w systemie Ubuntu 16.04 i starszym, może być konieczne uruchomienie poniższych poleceń:

sudo apt-get install właściwości-oprogramowania-common sudo add-apt-repository ppa: ondrej / php

Następnie zaktualizuj i zaktualizuj do PHP 7.2

sudo apt update

Następnie uruchom poniższe polecenia, aby zainstalować PHP 7.2 i powiązane moduły.

sudo apt install php7.2-fpm php7.2-common php7.2-gmp php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-xsl php7. 2-bcmath php7.2-mydło php7.2-gd php7.2-xml php7.2-cli php7.2-zip

Po zainstalowaniu PHP 7.2 uruchom poniższe polecenia, aby otworzyć domyślny plik konfiguracyjny PHP dla Nginx…

sudo nano /etc/php/7.2/fpm/php.ini 

Poniższe wiersze to dobre ustawienia dla większości systemów CMS opartych na PHP… Zaktualizuj plik konfiguracyjny za pomocą tych i zapisz… .

file_uploads = On allow_url_fopen = On short_open_tag = On memory_limit = 256 mln upload_max_filesize = 100 mln max_execution_time = 360 date.timezone = America / Chicago

Za każdym razem, gdy wprowadzasz zmiany w pliku konfiguracyjnym PHP, powinieneś także zrestartować serwer WWW Nginx… Aby to zrobić, uruchom poniższe polecenia:

sudo systemctl zrestartuj nginx.service

Teraz, gdy PHP jest zainstalowane, aby sprawdzić, czy działa, utwórz plik testowy o nazwie phpinfo.php w domyślnym katalogu głównym Nginx…. ( / var / www / html /)

sudo nano /var/www/html/phpinfo.php

Następnie wpisz zawartość poniżej i zapisz plik.

Następnie otwórz przeglądarkę i przejdź do nazwy hosta serwera lub adresu IP, a następnie phpinfo.php

http: //localhost/phpinfo.php

Powinieneś zobaczyć domyślną stronę testową PHP…

Krok 5: Utwórz bazę danych Magento

Po zainstalowaniu wszystkich pakietów wymaganych do działania Magento, przejdź poniżej, aby rozpocząć konfigurowanie serwerów. Najpierw uruchom poniższe polecenia, aby utworzyć pustą bazę danych Magento.

Aby zalogować się do serwera bazy danych MariaDB, uruchom poniższe polecenia.

sudo mysql -u root -p

Następnie utwórz bazę danych o nazwie magento

STWÓRZ BAZĘ DANYCH magento;

Utwórz użytkownika bazy danych o nazwie magentouser z nowym hasłem

UTWÓRZ UŻYTKOWNIKA 'magentouser' @ 'localhost' IDENTIFIED BY 'new_password_here';

Następnie przyznaj użytkownikowi pełny dostęp do bazy danych.

GRANT ALL ON magento. * TO 'magentouser' @ 'localhost' IDENTIFIED BY 'user_password_here' Z OPCJĄ GRANT;

Na koniec zapisz zmiany i wyjdź.

PRZYWILEJE SPŁUKIWANIA; WYJŚCIE;

Krok 6: Pobierz najnowszą wersję Magento

Aby pobrać najnowszą wersję Magento 2, możesz skorzystać z repozytorium Github… Zainstaluj Composer, Curl i inne zależności, aby rozpocząć…

sudo apt install curl git curl -sS https://getcomposer.org/installer | sudo php - --install-dir = / usr / local / bin --filename = composer 

Po zainstalowaniu curl i Composer powyżej przejdź do katalogu głównego Nginx i pobierz pakiety Magento 2 z Github…

Po wyświetleniu monitu wprowadź klucze uwierzytelniania. Twój klucz publiczny to Twoja nazwa użytkownika; Twój prywatny klucz to twoje hasło…. (https://marketplace.magento.com/customer/accessKeys/)

Będziesz musiał zarejestrować konto, aby utworzyć klucz powyżej… .

cd / var / www / html sudo composer create-project --repository = https: //repo.magento.com/ magento / project-community-edition example.com 

Skopiuj i wklej klucz uwierzytelniający… (Twój klucz publiczny to Twoja nazwa użytkownika; Twój prywatny klucz to twoje hasło)

Wynik: Wymagane uwierzytelnienie (repo.magento.com): Nazwa użytkownika: 234f2343435d190983j0ew8u3220 Hasło: Czy chcesz przechowywać poświadczenia repo.magento.com w /opt/magento/.config/composer/auth.json? [Yn] Y

Po pobraniu pakietów Magento uruchom poniższe polecenia, aby zainstalować Magento 2 z następującymi opcjami:

cd /var/www/html/example.com sudo bin / magento setup: install --base-url-secure = https: //example.com/ --db-host = localhost --db-name = magento - db-user = magentouser --db-password = new_password_here --admin-firstname = Admin --admin-lastname = Użytkownik [email protected] --admin-user = admin --admin-password = admin123 --language = en_US --currency = USD --timezone = Ameryka / Chicago --use-rewrites = 1 
  • Oprogramowanie Magento jest instalowane w katalogu głównym na hoście lokalnym…. Admin jest Admin; w związku z tym: adres URL Twojej witryny sklepowej to https://exmaple.com
  • Serwer bazy danych znajduje się na tym samym hoście lokalnym co serwer WWW… .
  • Nazwa bazy danych to magento, i magentouser a hasło to new_passwored_here
  • Używa serwera przepisuje
  • Administrator Magento ma następujące właściwości:
    • Imię i nazwisko to: Administrator
    • Nazwa użytkownika to: Admin
  • a hasło to admin123
  • Adres e-mail to: [email protected]
  • Domyślny język to: (Angielski amerykański)
  • Domyślna waluta to: dolary amerykańskie
  • Domyślna strefa czasowa to: Stany Zjednoczone Ameryki Środkowej (Ameryka / Chicago)

Następnie uruchom poniższe polecenia, aby ustawić prawidłowe uprawnienia do działania Magento 2.

sudo chown -R www-data: www-data /var/www/html/example.com/ sudo chmod -R 755 /var/www/html/example.com/

Krok 7: Skonfiguruj Nginx

Na koniec skonfiguruj plik konfiguracyjny witryny Nginx dla Magento. Ten plik będzie kontrolować, w jaki sposób użytkownicy uzyskują dostęp do treści Magento. Uruchom poniższe polecenia, aby utworzyć nowy plik konfiguracyjny o nazwie example.com.

sudo nano /etc/nginx/sites-available/example.com

Następnie skopiuj i wklej poniższą zawartość do pliku i zapisz go. Zastąp podświetlony wiersz własną nazwą domeny i katalogiem głównym ...

Pamiętaj też, aby odwołać się do plików certyfikatów utworzonych powyżej podczas konfiguracji Cloudflare…

upstream fastcgi_backend serwer fastcgi_pass unix: /var/run/php/php7.2-fpm.sock;  serwer nasłuchuj 80; słuchaj [::]: 80; słuchaj 443 ssl http2; nasłuchuj [::]: 443 ssl http2; nazwa_serwera example.com www.example.com; index.php; ssl_certificate /etc/ssl/certs/cloudflare_example.com.pem; ssl_certificate_key /etc/ssl/private/cloudflare_example.com.pem; ssl_client_certificate /etc/ssl/certs/origin-pull-ca.pem; ssl_verify_client on; ustaw $ MAGE_ROOT /var/www/html/example.com; ustaw produkcję $ MAGE_MODE; access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /var/www/html/example.com/nginx.conf.sample;  

Zapisz plik i zakończ.

Krok 8: Włącz Magento

Po skonfigurowaniu VirtualHost powyżej, włącz go, uruchamiając poniższe polecenia

sudo ln -s /etc/nginx/sites-available/example.com / etc / nginx / sites-enabled / sudo systemctl restart nginx.service

Następnie otwórz przeglądarkę i przejdź do nazwy domeny użytej powyżej…

https://example.com/

Powinieneś zobaczyć stronę główną Magento, jak pokazano poniżej

Nie zapomnij pobrać rozszerzenia Cloudflare dla Magento 2 i postępuj zgodnie z instrukcjami instalacji: https://www.cloudflare.com/integrations/magento/

Gratulacje! Pomyślnie zainstalowałeś Magento na Ubuntu 16.04 | 18.04 i może działać w nadchodzącym 18.10…

W przyszłości, jeśli zechcesz zaktualizować do nowej wydanej wersji, po prostu uruchom poniższe polecenia, aby zaktualizować…

Aktualizacja Magento

Najpierw zatrzymaj serwer internetowy…

sudo systemctl zatrzymaj nginx

W przyszłości, jeśli zechcesz zaktualizować do nowej wydanej wersji, po prostu uruchom poniższe polecenia, aby zaktualizować…

cd /var/www/html/example.com konserwacja sudo bin / magento: włącz sudo composer wymaga magento / product-community-edition 2.2.5 --no-update sudo composer aktualizacja sudo php bin / magento setup: uaktualnij sudo php bin / magento setup: di: kompilacja sudo php bin / magento indexer: reindex sudo php bin / magento konserwacja: wyłącz 

Może być konieczne ponowne uruchomienie, aby zaktualizować uprawnienia do katalogu Nginx…

Gratulacje! Pomyślnie skonfigurowałeś platformę eCommerce Magento na Ubuntu z obsługą Cloudflare na Ubuntu 16.04 | 18.04




Jeszcze bez komentarzy

Zbiór przydatnych informacji o systemie operacyjnym Linux i nowych technologiach
Świeże artykuły, praktyczne wskazówki, szczegółowe recenzje i poradniki. Poczuj się jak w domu w świecie systemu operacyjnego Linux