Android

Hoe Prestashop op ubuntu 18.04 te installeren

How to Install Prestashop CMS on Ubuntu 18.10

How to Install Prestashop CMS on Ubuntu 18.10

Inhoudsopgave:

Anonim

PrestaShop is een gratis en open-source e-commerceplatform. Het is gebaseerd op PHP en MySQL en kan worden uitgebreid met gratis en premium plug-ins en thema's.

Met functies zoals een intuïtieve beheerinterface, meerdere betalingsgateways, meertalig, analytisch en rapportage, is PrestaShop een platform voor veel online verkopers.

In deze zelfstudie laten we u zien hoe u PrestaShop op de Ubuntu 18.04-server installeert. We gebruiken Nginx als webserver, de nieuwste PHP 7.2 en MySQL / MariaDB als databaseserver.

voorwaarden

Zorg ervoor dat u aan de volgende voorwaarden hebt voldaan voordat u doorgaat met deze zelfstudie:

  • Zorg dat een domeinnaam verwijst naar het IP-adres van uw openbare server. We zullen example.com Nginx wordt op uw Ubuntu-server geïnstalleerd door deze instructies te volgen. Een SSL-certificaat is geïnstalleerd voor uw domein om gebruikersinformatie te coderen. U kunt een gratis Let's Encrypt SSL-certificaat installeren door deze instructies te volgen.

Werk de systeempakketten bij naar de nieuwste versies en installeer het hulpprogramma Unzip:

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

Een MySQL-database maken

PrestaShop slaat zijn informatie op in een MySQL-database.

Als MySQL of MariaDB op uw server is geïnstalleerd, kunt u deze stap overslaan. Anders installeert u het MySQL 5.7-serverpakket vanuit de standaardopslagplaatsen van Ubuntu door het volgende te typen:

sudo apt install mysql-server mysql-client Voor nieuwe MySQL-installaties wordt het aanbevolen om de opdracht mysql_secure_installation voeren om de beveiliging van uw MySQL-server te verbeteren.

Meld u aan bij de mysql-shell om een ​​database te maken:

sudo mysql

Voer vanuit de MySQL-shell de volgende SQL-instructie uit om een ​​nieuwe database met de naam prestashop :

CREATE DATABASE prestashop;

Maak vervolgens een MySQL-gebruikersaccount met de naam prestashop en verleen de nodige machtigingen aan de gebruiker door de volgende opdracht uit te voeren:

GRANT ALL ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Vergeet niet om het change-with-strong-password met een sterk wachtwoord.

Als u klaar bent, verlaat u de MySQL-console door te typen:

EXIT;

PHP installeren en configureren

PHP 7.2 is de standaard PHP-versie in Ubuntu 18.04 en wordt volledig ondersteund en aanbevolen voor PrestaShop.

Voer de volgende opdracht uit om PHP en alle vereiste PHP-modules te installeren:

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

Zodra het installatieproces is voltooid, wordt de PHP-FPM-service automatisch gestart. U kunt het verifiëren door te typen:

sudo systemctl status php7.2-fpm

De output zou er ongeveer zo uit moeten zien:

* 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"

Voer de volgende sed opdrachten uit om de aanbevolen PHP-opties in te stellen:

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

PrestaShop downloaden

Op het moment dat dit artikel werd geschreven, is de nieuwste stabiele versie van PrestaShop versie 1.7.6.2 .

Download de nieuwste versie van PrestaShop van de PrestaShop-downloadpagina met de volgende wget-opdracht:

cd /tmp wget

Wanneer de download is voltooid, maakt u een map waarin onze PrestaShop-bestanden staan:

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

Pak vervolgens het PrestaShop-archief uit:

unzip prestashop_*.zip

Dit archief bevat nog een zipbestand "prestashop.zip", dat alle PrestaShop-bestanden bevat. Pak de bestanden uit in de hoofdmap van het document:

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

Stel de juiste machtigingen in, zodat de webserver volledige toegang tot de bestanden en mappen van de site kan krijgen met behulp van de volgende opdracht chown :

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

Nginx configureren

Inmiddels zou Nginx met een SSL-certificaat al op uw Ubuntu-server geïnstalleerd moeten zijn. Als dit niet het geval is, controleert u de vereisten voor deze zelfstudie.

Open uw teksteditor en maak het volgende bestand:

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; } }

Vergeet niet om example.com te vervangen door uw PrestaShop-domein en "admin_CHANGE_ME" door uw beheerdersmap. U kunt de mapnaam vinden door de inhoud van de hoofdmap van Prestashop weer te geven:

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

Zorg er ook voor dat u het juiste pad naar de SSL-certificaatbestanden gebruikt. De fragmenten die in deze configuratie worden gebruikt, worden in deze handleiding gemaakt.

Voordat u de Nginx-service opnieuw start, controleert u de configuratie op syntaxisfouten:

sudo nginx -t

De uitvoer moet er zo uitzien:

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

Start ten slotte de Nginx-service opnieuw op door te typen:

sudo systemctl restart nginx

PrestaShop installeren

Nu PrestaShop is gedownload en de serverconfiguratie is voltooid, kunt u de installatie voltooien via de webinterface.

Open uw browser, typ uw domein en een scherm zoals het volgende verschijnt:

Om veiligheidsredenen moet u de installatiemap verwijderen. Ga hiervoor terug naar de terminal en voer het volgende rm commando in:

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

Om toegang te krijgen tot uw PrestaShop-beheerdersdashboard, klikt u op de knop "Uw winkel beheren". Voer uw e-mailadres en wachtwoord in en u wordt doorgestuurd naar het beheerdersdashboard.

Vanaf hier kunt u beginnen met het aanpassen van uw PrestaShop-installatie en nieuwe producten toevoegen.

Conclusie

U hebt PrestaShop op uw Ubuntu 18.04-server geïnstalleerd. PrestaShop-documentatie is een goed startpunt voor meer informatie over het beheren van uw PrestaShop-installatie.

ubuntu prestashop mysql php nginx e-commerce