Android

Jak zainstalować PrestaShop na Ubuntu 18.04

How to Install Prestashop CMS on Ubuntu 18.10

How to Install Prestashop CMS on Ubuntu 18.10

Spisu treści:

Anonim

PrestaShop to darmowa platforma e-commerce typu open source. Jest oparty na PHP i MySQL i może być rozszerzony o bezpłatne i premium wtyczki i motywy.

Dzięki funkcjom takim jak intuicyjny interfejs administracyjny, wiele bramek płatności, wielojęzyczność, analizy i raportowanie, PrestaShop jest platformą z wyboru dla wielu sprzedawców internetowych.

W tym samouczku pokażemy, jak zainstalować PrestaShop na serwerze Ubuntu 18.04. Będziemy używać Nginx jako serwera WWW, najnowszego PHP 7.2 i MySQL / MariaDB jako serwera bazy danych.

Wymagania wstępne

Przed kontynuowaniem tego samouczka upewnij się, że zostały spełnione następujące wymagania wstępne:

  • Niech nazwa domeny wskazuje adres IP twojego publicznego serwera. Skorzystamy z example.com .Nginx jest instalowany na serwerze Ubuntu, postępując zgodnie z tymi instrukcjami. Zainstalowano certyfikat SSL dla twojej domeny, aby szyfrować informacje użytkownika. Możesz zainstalować bezpłatny certyfikat Let's Encrypt SSL postępując zgodnie z tymi instrukcjami.

Zaktualizuj pakiety systemowe do najnowszych wersji i zainstaluj narzędzie do rozpakowywania:

sudo apt update && sudo apt upgrade sudo apt install unzip

Tworzenie bazy danych MySQL

PrestaShop przechowuje informacje w bazie danych MySQL.

Jeśli MySQL lub MariaDB jest zainstalowany na twoim serwerze, możesz pominąć ten krok. W przeciwnym razie zainstaluj pakiet serwera MySQL 5.7 z domyślnych repozytoriów Ubuntu, wpisując:

sudo apt install mysql-server mysql-client W przypadku świeżych instalacji MySQL zaleca się uruchomienie komendy mysql_secure_installation celu poprawy bezpieczeństwa serwera MySQL.

Aby utworzyć bazę danych, zaloguj się do powłoki mysql:

sudo mysql

Z poziomu powłoki MySQL uruchom następującą instrukcję SQL, aby utworzyć nową bazę danych o nazwie prestashop :

CREATE DATABASE prestashop;

Następnie utwórz konto użytkownika MySQL o nazwie prestashop i udziel mu niezbędnych uprawnień, uruchamiając następującą komendę:

GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Nie zapomnij zmienić change-with-strong-password silnym hasłem.

Po zakończeniu wyjdź z konsoli MySQL, wpisując:

EXIT;

Instalowanie i konfigurowanie PHP

PHP 7.2 jest domyślną wersją PHP w Ubuntu 18.04 i jest w pełni obsługiwana i zalecana dla PrestaShop.

Uruchom następujące polecenie, aby zainstalować PHP i wszystkie wymagane moduły PHP:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

Po zakończeniu procesu instalacji usługa PHP-FPM uruchomi się automatycznie. Możesz to zweryfikować, wpisując:

sudo systemctl status php7.2-fpm

Dane wyjściowe powinny wyglądać mniej więcej tak:

* php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-03-24 11:53:33 PDT; 14s ago Docs: man:php-fpm7.2(8) Main PID: 15853 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"

Uruchom następujące polecenia sed , aby ustawić zalecane opcje PHP:

sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Pobieranie PrestaShop

W chwili pisania tego artykułu najnowszą stabilną wersją PrestaShop jest wersja 1.7.6.2 .

Pobierz najnowszą wersję PrestaShop ze strony pobierania PrestaShop za pomocą następującego polecenia wget:

cd /tmp wget

Po zakończeniu pobierania utwórz katalog, w którym będą przechowywane nasze pliki PrestaShop:

sudo mkdir -p /var/www/html/example.com

Następnie rozpakuj archiwum PrestaShop:

unzip prestashop_*.zip

To archiwum zawiera kolejny plik zip „prestashop.zip”, który zawiera wszystkie pliki PrestaShop. Wyodrębnij pliki do katalogu głównego dokumentu domeny:

sudo unzip prestashop.zip -d /var/www/html/example.com

Ustaw prawidłowe uprawnienia, aby serwer mógł mieć pełny dostęp do plików i katalogów serwisu za pomocą następującego chown :

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

Konfigurowanie Nginx

Do tej pory powinieneś już mieć Nginx z certyfikatem SSL zainstalowanym na serwerze Ubuntu. Jeśli nie, sprawdź wymagania wstępne tego samouczka.

Otwórz edytor tekstu i utwórz następujący plik:

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

server { listen 80; listen 443 ssl http2; server_name example.com www.example.com; root /var/www/html/example.com; index index.php; # SSL parameters 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; include snippets/ssl.conf; include snippets/letsencrypt.conf; # Cloudflare / Max CDN fix location ~* \.(eot|otf|ttf|woff(?:2)?)$ { add_header Access-Control-Allow-Origin *; } # Do not save logs for these location = /favicon.ico { auth_basic off; allow all; log_not_found off; access_log off; } location = /robots.txt { auth_basic off; allow all; log_not_found off; access_log off; } # Images rewrite ^/()(-*)?(-+)?/.+.jpg$ /img/p/$1/$1$2$3.jpg last; rewrite ^/()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$1$2$3$4.jpg last; rewrite ^/()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$1$2$3$4$5.jpg last; rewrite ^/()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg last; rewrite ^/()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg last; rewrite ^/()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg last; rewrite ^/()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg last; rewrite ^/()()()()()()()()(-*)?(-+)?/.+.jpg$ /img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg last; rewrite ^/c/(+)(-*)(-+)?/.+.jpg$ /img/c/$1$2$3.jpg last; rewrite ^/c/(+)(-+)?/.+.jpg$ /img/c/$1$2.jpg last; # AlphaImageLoader for IE and fancybox rewrite ^images_ie/?(+)\.(jpe?g|png|gif)$ js/jquery/plugins/fancybox/images/$1.$2 last; # Web service API rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last; # Installation sandbox rewrite ^(/install(?:-dev)?/sandbox)/(.*) /$1/test.php last; #Change this block to your admin folder location /admin_CHANGE_ME { if (!-e $request_filename) { rewrite ^/.*$ /admin_CHANGE_ME/index.php last; } } # File security #.htaccess.DS_Store.htpasswd etc location ~ /\. { deny all; } # Source code directories location ~ ^/(app|bin|cache|classes|config|controllers|docs|localization|override|src|tests|tools|translations|travis-scripts|vendor|var)/ { deny all; } # Prevent exposing other sensitive files location ~ \.(yml|log|tpl|twig|sass)$ { deny all; } # Prevent injection of php files location /upload { location ~ \.php$ { deny all; } } location /img { location ~ \.php$ { deny all; } } # PHP FPM part location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } }

Nie zapomnij zastąpić example.com domeną PrestaShop, a „admin_CHANGE_ME” katalogiem administratora. Nazwę katalogu można znaleźć, wyświetlając zawartość katalogu głównego Prestashop:

sudo ls -l /var/www/html/example.com | grep admin

Upewnij się również, że używasz prawidłowej ścieżki do plików certyfikatów SSL. Fragmenty użyte w tej konfiguracji są tworzone w tym przewodniku.

Przed ponownym uruchomieniem usługi Nginx sprawdź konfigurację pod kątem błędów składniowych:

sudo nginx -t

Dane wyjściowe powinny wyglądać następująco:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Na koniec zrestartuj usługę Nginx, wpisując:

sudo systemctl restart nginx

Instalowanie PrestaShop

Po pobraniu PrestaShop i zakończeniu konfiguracji serwera możesz zakończyć instalację za pośrednictwem interfejsu internetowego.

Otwórz przeglądarkę, wpisz domenę, a pojawi się ekran podobny do następującego:

Ze względów bezpieczeństwa musisz usunąć katalog instalacyjny. Aby to zrobić, wróć do terminala i wprowadź następującą komendę rm :

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

Aby uzyskać dostęp do pulpitu administracyjnego PrestaShop, kliknij przycisk „Zarządzaj swoim sklepem”. Wprowadź swój adres e-mail i hasło, a nastąpi przekierowanie do pulpitu administracyjnego.

Tutaj możesz rozpocząć dostosowywanie instalacji PrestaShop i dodawać nowe produkty.

Wniosek

Pomyślnie zainstalowałeś PrestaShop na swoim serwerze Ubuntu 18.04. Dokumentacja PrestaShop to dobre miejsce, w którym można dowiedzieć się więcej na temat zarządzania instalacją PrestaShop.

ubuntu prestashop mysql php nginx ecommerce