怎样在 Ubuntu 18.04 LTS 上安装 Shopware CE

商店用品 是一个面向在线业务的开源电子商务平台。 Shopware 源代码托管在 GitHub. 本指南将向您展示怎样在全新的 Ubuntu 18.04 LTS Vultr 服务器实例上安装 Shopware 社区版 (CE)。

要求

Shopware 的最低要求是:

  • PHP 5.6.4 或更高版本,具有以下扩展:
    • 类型
    • curl
    • 判断
    • 散列
    • 图标
    • gd(带有 freetype 和 libjpeg)
    • json
    • 字符串
    • 开放式SSL
    • 会议
    • 简单XML
    • xml
    • 压缩
    • zlib
    • PDO/MySQL
  • Nginx 或 Apache 和 mod_rewrite 启用。 本指南将使用 Nginx
  • MySQL 5.5.0 或以上版本
  • IonCube Loader 5.0 版可选,但推荐

在你开始之前

检查 Ubuntu 版本。

lsb_release -ds
# Ubuntu 18.04 LTS

创建一个新的 non-root 用户帐户 sudo 访问并切换到它。

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

笔记: 代替 johndoe 用你的用户名。

设置时区。

sudo dpkg-reconfigure tzdata

确保您的系统是最新的。

sudo apt update && sudo apt upgrade -y

安装 unzip.

sudo apt install -y unzip

安装 PHP

安装 PHP 7.2 和所需的 PHP 扩展。

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-mysql php7.2-curl php7.2-json php7.2-zip php7.2-gd php7.2-xml php7.2-mbstring php7.2-opcache

检查版本。

php --version

# PHP 7.2.5-0ubuntu0.18.04.1 (cli) (built: May  9 2018 17:21:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.5-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies

安装 IonCube 加载器

下载 IonCube 加载器。

cd /tmp && wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

提取装载机。

tar xfz ioncube_loaders_lin_*.gz

通过运行以下命令在系统上找到 PHP 扩展目录。

php -i | grep extension_dir
# extension_dir => /usr/lib/php/20170718 => /usr/lib/php/20170718

将 ionCube Loader 复制到 PHP 扩展目录中。

sudo cp /tmp/ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20170718/

通过 PHP 配置包含加载器。

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

然后,在文件中添加一行以包含 ionCube 加载器。 它可以位于文件下方的任何位置 [PHP] 线。

zend_extension = /usr/lib/php/20170718/ioncube_loader_lin_7.2.so

Save 文件并重新启动 PHP-FPM。

sudo systemctl restart php7.2-fpm.service

安装 MySQL 并设置数据库

安装 MySQL。

sudo apt install -y mysql-server

检查版本。

mysql --version && sudo mysqld --version

# mysql  Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using  EditLine wrapper
# mysqld  Ver 5.7.22-0ubuntu18.04.1 for Linux on x86_64 ((Ubuntu))

mysql_secure installation 提高 MySQL 的安全性和设置 MySQL 的密码 root 用户。

sudo mysql_secure_installation

Would you like to setup VALIDATE PASSWORD plugin? N
Please set the password for root here.
New password: **********************
Re-enter new password: **********************
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? Y

Success.

All done!

以 root 用户身份连接到 MySQL shell。

sudo mysql -u root -p
# Enter password

为 Shopware 创建一个空的 MySQL 数据库和用户,并记住凭据。

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;

安装和配置 Nginx

安装 Nginx。

sudo apt install -y nginx

检查版本。

sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)

sudo vim /etc/nginx/sites-available/shopware.conf 并为 Shopware 配置 Nginx。

server {
    listen 80;
    listen [::]:80;

    server_name example.com; # Check this
    root /var/www/shopware; # Check this

    index shopware.php index.php;

    location / {
        try_files $uri $uri/ /shopware.php$is_args$args;
    }

    location /recovery/install {
      index index.php;
      try_files $uri /recovery/install/index.php$is_args$args;
    }

    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # Check this
    }
}

激活新的 shopware.conf 通过将文件链接到配置 sites-enabled 目录。

sudo ln -s /etc/nginx/sites-available/shopware.conf /etc/nginx/sites-enabled/

测试配置。

sudo nginx -t

重新加载 Nginx。

sudo systemctl reload nginx.service

安装商店

创建文档根目录。

sudo mkdir -p /var/www/shopware

更改所有权 /var/www/shopware 目录到 johndoe.

sudo chown -R johndoe:johndoe /var/www/shopware

下载 最新发布的 Shopware.

cd /var/www/shopware
wget https://releases.s3.shopware.com.s3.amazonaws.com/install_5.4.5_6847c0845f0f97230aa05c7294fa726a96dda3ff.zip?_ga=2.133696968.774684214.1529926951-1771999509.1528830594 -O shopware.zip
unzip shopware.zip
rm shopware.zip

笔记: 如果有更新的版本,请更新上面命令中的下载链接。

更改所有权 /var/www/shopware 目录到 www-data.

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

增加 memory_limit = 256Mupload_max_filesize = 6M,并设置 allow_url_fopen = On 如果它尚未设置在 /etc/php/7.2/fpm/php.ini 文件。

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

在进行更改后 /etc/php/7.2/fpm/php.ini 文件,重新加载 php7.2-fpm.service

sudo systemctl reload php7.2-fpm.service

在 Web 浏览器中打开您的域/IP,然后按照安装向导进行操作。 Shopware 的后端位于 /backend example: https://example.com/backend.

您已成功安装 Shopware。

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com

相关阅读:

Posted in: LinuxTags: , ,