Jak zainstalować PrestaShop na Ubuntu 20.04 | 18.04 z Nginx i Let's Encrypt

  • Noah Scott
  • 0
  • 4653
  • 1302

Ten krótki samouczek pokazuje studentom i nowym użytkownikom, jak zainstalować platformę eCommerce PrestaShop na Ubuntu 20.04 | 18.04 z serwerem HTTP Nginx i zaszyfrujmy wieloznaczne certyfikaty SSL.

PrestaShop zapewnia wydajne i innowacyjne rozwiązanie e-commerce, które jest odpowiednie dla każdego, kto szuka łatwej platformy do zarządzania i sprzedaży swoich zapasów online.

Umożliwia stworzenie kompletnego sklepu internetowego, w tym zarządzanie zapasami, katalogami produktów, wysyłką, fakturowaniem i wieloma innymi.

Możesz używać PrestaShop do prowadzenia sklepów internetowych i tworzenia niesamowitych cyfrowych doświadczeń przy niewielkim wysiłku.

Jeśli szukasz platformy sklepu internetowego klasy korporacyjnej do sprzedaży swoich produktów, PrestaShop prawdopodobnie powinien być dla Ciebie punktem wyjścia. A jeśli chcesz dowiedzieć się, jak łatwo go zainstalować i zarządzać nim, ten post jest wszystkim, czego potrzebujesz.

Aby uzyskać więcej informacji na temat PrestaShop, odwiedź ich stronę główną

Aby rozpocząć instalację PrestaShop, wykonaj poniższe czynności:

Krok 1: Zainstaluj serwer HTTP Nginx

PrestaShop wymaga serwera WWW do działania, a Nginx jest jednym z najpopularniejszych obecnie dostępnych serwerów WWW typu open source.

Aby zainstalować Nginx na Ubuntu, uruchom poniższe polecenia:

sudo apt update sudo apt install nginx

Po zainstalowaniu Nginx poniższe polecenia mogą być używane 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

Aby sprawdzić, czy Nginx jest zainstalowany i działa, otwórz przeglądarkę internetową i przejdź do adresu IP serwera lub nazwy hosta.

http: // localhost

Jeśli widzisz powyższą stronę w przeglądarce, oznacza to, że Nginx działa zgodnie z oczekiwaniami.

Krok 2: Zainstaluj serwer bazy danych MariaDB

Będziesz także potrzebować serwera bazy danych do uruchomienia PrestaShop. Serwer bazy danych to miejsce, w którym przechowywane są treści PrestaShop.

Prawdziwy serwer bazy danych typu open source, którego możesz używać z PrestaShop, to serwer bazy danych MariaDB. Jest szybki, bezpieczny i jest domyślnym serwerem dla prawie wszystkich serwerów Linux.

Aby zainstalować MariaDB, uruchom 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 uruchamiała się po uruchomieniu serwera.

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

Aby sprawdzić i potwierdzić, że MariaDB jest zainstalowana i działa, zaloguj się do konsoli bazy danych za pomocą poniższych poleceń:

sudo mysql -u root -p

po wyświetleniu monitu wpisz hasło roota.

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

Krok 3: Zainstaluj PHP 7.4 i powiązane moduły

PrestaShop to aplikacja oparta na PHP i do jej uruchomienia wymagane jest PHP. Ponieważ niektóre wersje Ubuntu nie mają najnowszej wersji PHP, możesz dodać repozytorium PPA innej firmy, aby zainstalować stamtąd PHP.

Poniższe polecenie doda PPA innej firmy do Ubuntu.

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.4

sudo apt update

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

sudo apt zainstaluj php7.4-fpm php7.4-common php7.4-mysql php7.4-gmp php7.4-curl php7.4-intl php7.4-mbstring php7.4-xmlrpc php7.4-gd php7. 4-xml php7.4-cli php7.4-zip

Po zainstalowaniu PHP 7.4 przejdź i skonfiguruj podstawowe ustawienia, które mogą być wymagane do prawidłowego działania PrestaShop.

Uruchom poniższe polecenia, aby otworzyć PHP

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

Poniżej znajdują się dobre ustawienia do skonfigurowania dla większości witryn PrestaShop.

file_uploads = On allow_url_fopen = On short_open_tag = On memory_limit = 256 mln cgi.fix_pathinfo = 0 upload_max_filesize = 100 mln max_execution_time = 360 date.timezone = Ameryka / Chicago

Powinno to spowodować zainstalowanie PHP 7.4 z kilkoma podstawowymi ustawieniami, aby umożliwić działanie PrestaShop.

Krok 4: Utwórz bazę danych PrestaShop

Po zainstalowaniu wszystkich serwerów powyżej, czas rozpocząć konfigurację środowiska PrestaShop. Najpierw wykonaj poniższe kroki, aby utworzyć pustą bazę danych do użytku w PrestaShop.

Zaloguj się do konsoli bazy danych MariaDB za pomocą poniższych poleceń:

sudo mysql -u root -p

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

STWÓRZ BAZĘ DANYCH prestashop;

Następnie utwórz użytkownika bazy danych o nazwie prestashopuser i ustaw hasło

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

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

PRZYZNANIE WSZYSTKIEGO NA PRESTASHOP. * DO 'prestashopuser' @ 'localhost' Z OPCJĄ GRANT;

Na koniec zapisz zmiany i wyjdź.

PRZYWILEJE SPŁUKIWANIA; WYJŚCIE;

Krok 5: Pobierz PrestaShop

W tym momencie PrestaShop jest gotowy do pobrania i zainstalowania. Użyj poniższych poleceń, aby pobrać najnowszą wersję PrestaShop.

https://www.prestashop.com/en/download

W chwili pisania tego tekstu aktualna wersja to 1.7.6.5.

Uruchom poniższe polecenia, aby go pobrać.

cd / tmp wget https://download.prestashop.com/download/releases/prestashop_1.7.6.5.zip unzip prestashop _ *. zip

Następnie uruchom poniższe polecenia, aby utworzyć katalog PrestaShop i wyodrębnić tam pobraną zawartość.

sudo mkdir -p / var / www / prestashop sudo unzip prestashop.zip -d / var / www / prestashop

Następnie uruchom poniższe polecenia, aby ustawić odpowiednie uprawnienia do działania PrestaShop.

Następnie uruchom poniższe polecenie, aby zezwolić dane-www użytkownika do katalogu PrestaShop.

sudo chown -R www-data: www-data / var / www / prestashop / sudo chmod -R 755 / var / www / prestashop /

Krok 6: Skonfiguruj Nginx

Poniżej znajduje się miejsce, w którym konfigurujesz plik Nginx VirtualHost dla witryny PrestaShop, którą tworzysz. Ten plik definiuje sposób obsługi i przetwarzania żądań klientów.

Uruchom poniższe polecenia, aby utworzyć nowy plik VirtualHost o nazwie prestashop w / etc / nginx / sites-available / informator.

sudo nano / etc / nginx / sites-available / prestashop

Bardzo dobre ustawienia konfiguracji dla większości witryn PrestaShop na serwerze Nginx znajdują się poniżej. Ta konfiguracja powinna działać świetnie.

Skopiuj poniższą zawartość i zapisz do utworzonego powyżej pliku.

serwer nasłuchuj 80; słuchaj [::]: 80; root / var / www / prestashop; index index.php index.html index.htm; nazwa_serwera example.com www.example.com; lokalizacja / przepisać ^ / api /?(.*)$ /webservice/dispatcher.php?url=$1 last; przepisać ^ / ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / $ 1 / $ 1 $ 2.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / 1 $ / 2 $ / 1 $ 2 $ 3.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? / . + \. jpg $ /img/p/$1/$2/$3/$1$2$3$4.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0 -9] +)? /.+ \. Jpg $ /img/p/$1/$2/$3/$4/$1$2$3$4$5.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9-] *)? (- [0-9] +)? /.+ \. Jpg $ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a- zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / $ 1 / $ 2/3 $ / 4 $ / 5 $ / 6 $ / 1 $ 2 $ 3 $ 4 $ 5 $ 6 $ 7.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9 ]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / 1 $ / 2 $ / 3 $ / 4 $ / 5 $ / 6 $ /$7/$1$2$3$4$5$6$7$8.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9 ]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. Jpg $ / img / p / $ 1 / $ 2 / 3 $ / 4 $ / 5 $ / 6 $ / 7 $ / 8 $ / 1 $ 2 $ 3 $ 4 $ 5 $ 6 $ 7 $ 8 $ 9.jpg ostatnia; przepisać ^ / c / ([0-9] +) (- [_ a-zA-Z0-9 -] *) (- [0-9] +)? /.+ \. jpg $ / img / c / $ 1 $ 2.jpg ostatni; rewrite ^ / c / ([a-zA-Z -] +) (- [0-9] +)? /.+ \. jpg $ /img/c/$1.jpg ostatnia; rewrite ^ / ([0-9] +) (- [_ a-zA-Z0-9 -] *) (- [0-9] +)? /.+ \. jpg $ / img / c / $ 1 $ 2. jpg ostatni; try_files $ uri $ uri / /index.php?$args;  # AlphaImageLoader dla IE i fancybox rewrite ^ images_ie /? ([^ /] +) \. (Jpe? G | png | gif) $ js / jquery / plugins / fancybox / images / $ 1. $ 2 last; # Przepisanie interfejsu API usługi sieci Web ^ / api /?(.*)$ /webservice/dispatcher.php?url=$1 last; # Przepisywanie piaskownicy instalacji ^ (/ install (?: - dev)? / Sandbox) / (. *) /$1/test.php last; # Zmień ten blok na lokalizację folderu administratora /admin_CHANGE_ME if (! -e $ nazwa_pliku_żądania) przepisać ^ /. * $ /admin_CHANGE_ME/index.php last;  # Lokalizacja katalogów kodu źródłowego ~ ^ / (app | bin | cache | classes | config | controllers | docs | localization | override | src | tests | tools | Translations | travis-scripts | vendor | var) / deny all;  # Zapobiegaj ujawnianiu lokalizacji innych poufnych plików ~ \. (Yml | log | tpl | twig | sass) $ deny all;  lokalizacja ~ \ .php $ include snippets / fastcgi-php.conf; fastcgi_pass unix: /var/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; dołącz fastcgi_params; 

Zapisz plik i zakończ.

Po zapisaniu powyższego pliku uruchom poniższe polecenia, aby włączyć nową witrynę, a następnie zrestartuj serwer Nginx.

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

Na tym etapie PrestaShop jest gotowy i można go uruchomić przechodząc na adres IP serwera lub nazwę hosta.

https://example.com

Jeśli jednak chcesz włączyć SSL lub akceptować ruch internetowy przez HTTPS, możesz kontynuować poniżej, aby zainstalować i skonfigurować bezpłatne certyfikaty SSL Let's Encrypt.

Krok 7: Zainstaluj Let's Encrypt Wildcard Certificates

W kroku 6 PrestaShop jest gotowy do użycia bez SSL. Jeśli jednak chcesz obsługiwać ruch internetowy przez HTTPS, instalacja i konfiguracja certyfikatu Let's Encrypt SSL lub innych certyfikatów publicznych jest koniecznością.

Aby zainstalować Let's Encrypt, uruchom poniższe polecenia.

sudo apt update sudo apt-get install letsencrypt

Powyższe polecenia zainstalują narzędzie certbot i wszystkie zależności, które pozwolą mu działać.

Let's Encrypt zapewnia wiele sposobów, aby rzucić wyzwanie, aby potwierdzić, że jesteś właścicielem domeny, dla której chcesz zapewnić certyfikaty SSL. Nie będziesz w stanie wygenerować certyfikatów, jeśli nie możesz udowodnić, że jesteś właścicielem domeny, którą chcesz zabezpieczyć.

W przypadku certyfikatów z symbolami wieloznacznymi jedyną metodą wezwania akceptowaną przez Let's Encrypt jest wyzwanie DNS, które możemy wywołać za pośrednictwem Preferowane wyzwania = dns flaga.

Tak więc, aby wygenerować certyfikat wieloznaczny dla domeny * .example.com, uruchamiasz poniższe polecenia:

sudo certbot certonly --manual --preferred-challenge = dns --email [email protected] --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d example.com - d * .example.com

Powyższe opcje poleceń są wyjaśnione poniżej:

  • pewnie: Uzyskaj lub odnów certyfikat, ale nie instaluj
  • -podręcznik: Uzyskaj certyfikaty w sposób interaktywny
  • -Preferowane wyzwania = dns: Użyj DNS do uwierzytelnienia własności domeny
  • -serwer: Określ punkt końcowy, który ma zostać użyty do wygenerowania
  • -zgadzam się: Zaakceptuj warunki abonenta serwera ACME
  • -re: Nazwa domeny, dla której mają być dostarczane certyfikaty

Po wykonaniu powyższego polecenia Let's Encrypt udostępni ciąg tekstowy, aby dodać rekord tekstowy do wpisu DNS…

Przykład:

Zapisywanie dziennika debugowania w /var/log/letsencrypt/letsencrypt.log Wybrane wtyczki: instrukcja Authenticator, Instalator Brak ---------------------------- -------------------------------------------------- - Czy byłbyś skłonny udostępnić swój adres e-mail Electronic Frontier Foundation, partnerowi założycielowi projektu Let's Encrypt i organizacji non-profit, która rozwija Certbot? Chcielibyśmy wysłać Ci wiadomość e-mail o EFF i naszej pracy nad szyfrowaniem sieci, ochroną jej użytkowników i ochroną praw cyfrowych. -------------------------------------------------- ----------------------------- (T) es / (N) o: y Uzyskanie nowego certyfikatu Wykonanie następujących wyzwań: dns -01 wyzwanie dla example.com ------------------------------------------- ------------------------------------ UWAGA: IP tego komputera będzie publicznie rejestrowane jako żądanie ten certyfikat. Jeśli używasz certbota w trybie ręcznym na maszynie, która nie jest Twoim serwerem, upewnij się, że zgadzasz się z tym. Czy zgadzasz się, że Twoje IP jest rejestrowane? -------------------------------------------------- ----------------------------- (T) es / (N) o: y ---------- -------------------------------------------------- ------------------- Wdróż rekord DNS TXT pod nazwą _acme-challenge.example.com z następującą wartością: x4MrZ6y-JqFJQRmq_lGi9ReRQHPa1aTC9J2O7wDKzq8 Przed kontynuowaniem sprawdź, czy rekord jest rozmieszczony.

Przejdź do portalu dostawcy DNS i dodaj rekord tekstowy dla powyższego ciągu i zapisz…

Poczekaj kilka minut, zanim przejdziesz dalej od monitu.

Niektórzy dostawcy DNS próbują propagować zmiany, więc może to zależeć od platformy Twojego dostawcy.

Po zmianach powyżej i Let's encrypt jest w stanie potwierdzić, że jesteś właścicielem domeny, powinieneś zobaczyć pomyślny komunikat, jak poniżej:

WAŻNE UWAGI: - Gratulacje! Twój certyfikat i łańcuch zostały zapisane pod adresem: /etc/letsencrypt/live/example.com/fullchain.pem Twój plik klucza został zapisany pod adresem: /etc/letsencrypt/live/example.com/privkey.pem Twój certyfikat wygaśnie w dniu 2020-01-09. Aby w przyszłości uzyskać nową lub ulepszoną wersję tego certyfikatu, po prostu ponownie uruchom certbot. Aby odnowić * wszystkie * certyfikaty w trybie nieinteraktywnym, uruchom polecenie „certbot renew” 

Certyfikat wieloznaczny jest teraz wygenerowany i gotowy do użycia.

Aby sprawdzić, czy certyfikat jest gotowy, uruchom poniższe polecenia:

certyfikaty sudo certbot

Powinien wyświetlić podobny ekran, jak poniżej:

Znaleziono następujące certyfikaty: Nazwa certyfikatu: example.com Domeny: * .example.com Data wygaśnięcia: 2020-01-05 07: 48: 04 + 00: 00 (WAŻNY: 85 dni) Ścieżka certyfikatu: / etc / letsencrypt / live /example.com/fullchain.pem Ścieżka klucza prywatnego: /etc/letsencrypt/live/example.com/privkey.pem

Teraz certyfikaty Let's Encrypt są ważne przez 90 dni… Będziesz chciał skonfigurować zadanie crob, aby zautomatyzować proces odnawiania… Aby to zrobić, otwórz crontab i dodaj poniższy wpis:

sudo crontab -e

Następnie dodaj poniższy wiersz i zapisz…

0 1 * * * / usr / bin / certbot renew >> /var/log/letsencrypt/renew.log

Zapisz i gotowe!

Po zainstalowaniu Let's Encrypt otwórz ponownie utworzony powyżej plik Nginx VirtualHost i dodaj konfiguracje Let's Encrypt, aby zabezpieczyć swoją witrynę.

Uruchom poniższe polecenia, aby otworzyć plik.

sudo nano / etc / nginx / sites-available / prestashop

serwer nasłuchuj 80; słuchaj [::]: 80; nazwa_serwera * .example.com; return 301 https: // $ host $ request_uri;  serwer nasłuchiwanie 443 ssl http2; nasłuchuj [::]: 443 ssl http2; root / var / www / prestashop; index index.php index.html index.htm; nazwa_serwera example.com www.example.com; if ($ host! = "example.com") return 301 https: //example.com$request_uri;  ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers 'TLS13 + AESGCM + AES128: ECDHE-ECDSA-CHACHA20-POLY1305: ECDHE-RSA-CHACHA20-POLY1305: ECDHE-ECDSA-AES128-GCM-SHA256: ECDHE-RSA-CM56-AES256-SHA-CS256 GCM-SHA384: ECDHE-RSA-AES256-GCM-SHA384: DHE-RSA-AES128-GCM-SHA256: DHE-RSA-AES256-GCM-SHA384: ECDHE-ECDSA-AES128-SHA256: ECDHE128-RS ECDHE-ECDSA-AES128-SHA: ECDHE-RSA-AES256-SHA384: ECDHE-RSA-AES128-SHA: ECDHE-ECDSA-AES256-SHA384: ECDHE-ECDSA-AES256-SHA: ECDHE-RSA-AES: ECDHE-RSA-A: RSA-AES128-SHA256: DHE-RSA-AES128-SHA: DHE-RSA-AES256-SHA256: DHE-RSA-AES256-SHA: ECDHE-ECDSA-DES-CBC3-SHA: ECDHE-RSA-DES-CBC3-SHA: EDH-RSA-DES-CBC3-SHA: AES128-GCM-SHA256: AES256-GCM-SHA384: AES128-SHA256: AES256-SHA256: AES128-SHA: AES256-SHA: DES-CBC3-SHA:! DSS '; ssl_prefer_server_ciphers on; ssl_session_cache shared: SSL: 50 m; ssl_session_timeout 1d; ssl_session_tickets wyłączone; ssl_ecdh_curve X25519: sect571r1: secp521r1: secp384r1; lokalizacja / przepisać ^ / api /?(.*)$ /webservice/dispatcher.php?url=$1 last; przepisać ^ / ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / $ 1 / $ 1 $ 2.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / 1 $ / 2 $ / 1 $ 2 $ 3.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? / . + \. jpg $ /img/p/$1/$2/$3/$1$2$3$4.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0 -9] +)? /.+ \. Jpg $ /img/p/$1/$2/$3/$4/$1$2$3$4$5.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a-zA-Z0-9-] *)? (- [0-9] +)? /.+ \. Jpg $ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) (- [_ a- zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / $ 1 / $ 2/3 $ / 4 $ / 5 $ / 6 $ / 1 $ 2 $ 3 $ 4 $ 5 $ 6 $ 7.jpg ostatni; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9 ]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. jpg $ / img / p / 1 $ / 2 $ / 3 $ / 4 $ / 5 $ / 6 $ /$7/$1$2$3$4$5$6$7$8.jpg ostatnia; przepisać ^ / ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9]) ([0-9 ]) ([0-9]) (- [_ a-zA-Z0-9 -] *)? (- [0-9] +)? /.+ \. Jpg $ / img / p / $ 1 / $ 2 / 3 $ / 4 $ / 5 $ / 6 $ / 7 $ / 8 $ / 1 $ 2 $ 3 $ 4 $ 5 $ 6 $ 7 $ 8 $ 9.jpg ostatnia; przepisać ^ / c / ([0-9] +) (- [_ a-zA-Z0-9 -] *) (- [0-9] +)? /.+ \. jpg $ / img / c / $ 1 $ 2.jpg ostatni; rewrite ^ / c / ([a-zA-Z -] +) (- [0-9] +)? /.+ \. jpg $ /img/c/$1.jpg ostatnia; rewrite ^ / ([0-9] +) (- [_ a-zA-Z0-9 -] *) (- [0-9] +)? /.+ \. jpg $ / img / c / $ 1 $ 2. jpg ostatni; try_files $ uri $ uri / /index.php?$args;  # AlphaImageLoader dla IE i fancybox rewrite ^ images_ie /? ([^ /] +) \. (Jpe? G | png | gif) $ js / jquery / plugins / fancybox / images / $ 1. $ 2 last; # Przepisanie interfejsu API usługi sieci Web ^ / api /?(.*)$ /webservice/dispatcher.php?url=$1 last; # Przepisywanie piaskownicy instalacji ^ (/ install (?: - dev)? / Sandbox) / (. *) /$1/test.php last; # Zmień ten blok na lokalizację folderu administratora / admin_CHANGE_ME if (! -E $ request_filename) rewrite ^ /. * $ /admin_CHANGE_ME/index.php ostatni;  # Lokalizacja katalogów kodu źródłowego ~ ^ / (app | bin | cache | classes | config | controllers | docs | localization | override | src | tests | tools | Translations | travis-scripts | vendor | var) / deny all;  # Zapobiegaj ujawnianiu lokalizacji innych poufnych plików ~ \. (Yml | log | tpl | twig | sass) $ deny all;  lokalizacja ~ \ .php $ include snippets / fastcgi-php.conf; fastcgi_pass unix: /var/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name; dołącz fastcgi_params; 

Następnie dodaj podświetlone linie do pliku VirtualHost, jak pokazano poniżej:

Po powyższym zrestartuj Nginx i PHP 7.4-FPM

sudo systemctl reload nginx sudo systemctl reload php7.4-fpm

Następnie otwórz przeglądarkę i przejdź do nazwy domeny serwera. Powinieneś zobaczyć kreatora konfiguracji PrestaShop, aby zakończyć. Postępuj zgodnie z instrukcjami kreatora.

https://example.com/

Instalator PrestaShop powinien uruchomić kreatora konfiguracji. Wybierz język instalacji i kontynuuj.

Zaakceptuj warunki licencji, sprawdź, czy wszystkie wymagania są spełnione, a następnie kontynuuj.

Następnie wpisz nazwę bazy danych, nazwę użytkownika i hasło utworzone powyżej i kontynuuj.

Po tym Twój sklep powinien być gotowy.

Usuń folder instalacyjny.

sudo rm -rf /var/www/html/example.com/install

Otóż ​​to!

Wniosek:

Gratulacje! Pomyślnie zainstalowałeś PrestaShop na Ubuntu 18.04 | 20.04. Jeśli znajdziesz jakikolwiek błąd powyżej, użyj poniższego formularza komentarza, aby go zgłosić.

Dzięki,




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