云网牛站
所在位置:首页 > Linux云服务器 > 采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

2019-01-25 21:26:20作者:戴进稿源:云网牛站

本文介绍采用Nginx作为Web服务器在Ubuntu 18.04 LTS系统上安装PrestaShop的方法。

 

简介

PrestaShop是一个完全可扩展的开源电子商务解决方案,通过为商家和客户提供最佳购物车体验,帮助你在线销售产品。

PrestaShop是用PHP编写的,可高度自定义并支持所有主要的支付服务,它配备了大量模板,可以轻松选择适合你品牌的店面。

 

一、安装Nginx和PHP

PrestaShop需要PHP和Web服务器,本文选择的Web服务器是Nginx,当然也可以使用Apache(Ubuntu 18.04系统中使用Apache搭建简单的web服务器):

sudo apt update

sudo apt -y install nginx php-cli php-intl php-fpm php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath

nginx和php-fpm服务都能运行,如下检测:

$ systemctl status nginx php7.2-fpm.service

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

 

二、安装和配置MariaDB数据库

PrestaShop需要一个数据库来存储其数据,MariaDB是一个功能强大的开源关系数据库系统,建议采用它,请参考在Ubuntu 18.04系统上安装MariaDB 10.4的步骤

如果想使用MySQL,请参考在Ubuntu 18.04/16.04命令行上安装MySQL 8.0.11的全过程

登录MariaDB shell:

$ mysql -u root -p

为PrestaShop创建数据库和用户:

CREATE USER 'prestashop'@'localhost' IDENTIFIED BY 'StrongPassword';

CREATE DATABASE prestashop;

GRANT ALL PRIVILEGES ON prestashop.* TO 'prestashop'@'localhost';

FLUSH PRIVILEGES;

QUIT

检查是否可以用prestashop用户身份登录Database shell:

$ mysql -u prestashop -p

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

 

三、下载PrestaShop并解压

PrestaShop网站可以查看PrestaShop的最新版本,目前是1.7.5.0:

wget https://download.prestashop.com/download/releases/prestashop_1.7.5.0.zip

解压缩存档文件:

mkdir prestashop

unzip prestashop_1.7.5.0.zip -d prestashop

将prestashop移动到/srv/prestashop:

sudo mv prestashop /srv

为/srv/prestashop设置适当的权限:

sudo chown -R www-data:www-data /srv/prestashop/

sudo chmod -R 755 /srv/prestashop/

 

四、配置Nginx并完成PrestaShop的安装

如果尚未安装Nginx,请确保已安装并运行:

sudo apt install nginx

然后为PrestaShop创建一个文件:

sudo vim /etc/nginx/conf.d/prestashop.conf

在文件数据下面增加以下代码:

server {

listen 80;

server_name  example.com;

root /srv/prestashop;

index  index.php index.html;

location / {

rewrite ^/api/?(.*)$ /webservice/dispatcher.php?url=$1 last;

rewrite ^/([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$1$2.jpg last;

rewrite ^/([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$1$2$3.jpg last;

rewrite ^/([0-9])([0-9])([0-9])(-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ /img/p/$1/$2/$3/$1$2$3$4.jpg last;

rewrite ^/([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 last;

rewrite ^/([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 last;

rewrite ^/([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 last;

rewrite ^/([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 last;

rewrite ^/([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 last;

rewrite ^/c/([0-9]+)(-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2.jpg last;

rewrite ^/c/([a-zA-Z-]+)(-[0-9]+)?/.+\.jpg$ /img/c/$1.jpg last;

rewrite ^/([0-9]+)(-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ /img/c/$1$2.jpg last;

try_files $uri $uri/ /index.php?$args;        

}

location ~ \.php$ {

include snippets/fastcgi-php.conf;

fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include /etc/nginx/fastcgi_params;

}

gzip on;

gzip_comp_level 1;

gzip_buffers 16 8k;

gzip_types application/json text/css application/javascript;

}

在重新启动nginx之前,应确认文件syntax为OK:

# nginx -t

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

nginx: configuration file /etc/nginx/nginx.conf test is successful

为要加载的新文件重新启动nginx服务:

sudo systemctl restart nginx

启动PrestaShop安装向导以在http://example.com(需要自己配置的域名)上完成安装。

1.选择安装语言,然后单击下一步:

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

2.同意软件条款和条件,然后单击下一步:

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

3.单击下一步确认PrestaShop兼容性验证成功。

4.选择商店名称,主要活动并创建你的帐户。

5.使用先前创建的凭据配置数据库连接,然后单击立即测试数据库连接:

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

等待安装完成登录,用户在4中创建。

出于安全考虑,必须删除install文件夹:

sudo rm -rf /srv/prestashop/install/

选择是否访问后台或前台:

采用Nginx在Ubuntu 18.04系统上安装PrestaShop的方法

至此,你已在Ubuntu 18.04 LTS系统上成功安装了PrestaShop。

 

相关主题

在Ubuntu 18.04或CentOS 7系统上安装PHP 7.3

精选文章
热门文章