FreeBSD 12にSylius eCommerceプラットフォームをインストールする方法

Syliusは、Symfony Frameworkに基づいた、PHP用の最新のeコマースプラットフォームです。SyliusのソースコードはGitHubでホストされています

このガイドでは、PHP、データベースとしてMariaDB、WebサーバーとしてNginxを使用して、新しいFreeBSD 12 VultrインスタンスでのSyliusインストールプロセスについて説明します。

必要条件

Syliusをインストールするには、次のものが必要です。

  • 2048 MB以上のメモリを搭載したVultrサーバーインスタンス。
  • NginxまたはApache。このガイドでは、Nginxを使用します。
  • いくつかの特定のPHPエクステンションとPHPのバージョン7.2以上:gdexiffileinfointl
  • PHP構成設定:memory_limit以上1024Mdate.timezone
  • MySQLバージョン5.7または8.0、またはMariaDB相当
  • 作曲
  • Node.js

あなたが始める前に

FreeBSDのバージョンを確認してください。

uname -ro
# FreeBSD 12.0-RELEASE

FreeBSDシステムが最新であることを確認します。

freebsd-update fetch install
pkg update && pkg upgrade -y

必要なパッケージをインストールします。

pkg install -y sudo vim unzip curl wget bash socat git

希望するユーザー名で新しいユーザーアカウントを作成します。使用しますjohndoe

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

visudoコマンドを実行し、%wheel ALL=(ALL) ALL行のコメントを外して、wheelグループのメンバーが任意のコマンドを実行できるようにします。

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

次に、で新しく作成したユーザーに切り替えますsu

su - johndoe

注: ユーザー名に置き換えjohndoeてください。

タイムゾーンを設定します。

sudo tzsetup

PHPをインストールする

PHPと必要なPHP拡張機能をインストールします。

sudo pkg install -y php73 php73-mbstring php73-tokenizer php73-pdo php73-pdo_mysql php73-openssl php73-hash php73-json php73-phar php73-filter php73-zlib php73-dom php73-xml php73-xmlwriter php73-xmlreader php73-curl php73-session php73-ctype php73-iconv php73-gd php73-simplexml php73-zip php73-filter php73-tokenizer php73-calendar php73-fileinfo php73-intl php73-phar php73-soap php73-xmlrpc php73-opcache php73-mysqli php73-bcmath php73-gmp php73-exif

バージョンを確認してください。

php --version
# PHP 7.3.8 (cli) (built: Aug  8 2019 01:28:36) ( NTS )

ソフトリンクphp.ini-productionphp.ini

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

PHP-FPMを有効にして起動します。

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

ファイル名を指定して実行sudo vim /usr/local/etc/php.iniとセットmemory_limit1024M以上、および設定date.timezone

memory_limit = 1024M
date.timezone = Region/City

PHP-FPMを再起動します。

sudo service php-fpm restart

MariaDBをインストールしてデータベースを作成する

MariaDBをインストールします。

sudo pkg install -y mariadb102-client mariadb102-server

バージョンを確認してください。

mysql --version
# mysql  Ver 15.1 Distrib 10.2.25-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

MariaDBを起動して有効にします。

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

mysql_secure installationスクリプトを実行してセキュリティを向上させ、rootユーザーのパスワードを設定します。

sudo mysql_secure_installation

rootユーザーとしてシェルに接続します。

sudo mysql -u root -p
# Enter password

Syliusの空のデータベースとユーザーを作成し、資格情報を覚えておきます。

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

注: 交換するdbnameusername、セットアップのための適切な名前を持ちます。password強力なパスワードに置き換えます。

Nginxをインストールする

Nginxをインストールします。

sudo pkg install -y nginx

バージョンを確認してください。

nginx -v
# nginx version: nginx/1.16.1

Nginxを有効にして起動します。

sudo sysrc nginx_enable=yes
sudo service nginx start

NginxをSylius用に構成します。sudo vim /usr/local/etc/nginx/sylius.confファイルを実行し、次の構成を入力します。

server {
  listen 80;
  server_name example.com;
  root /usr/local/www/sylius/public;
  location / {
    try_files $uri /index.php$is_args$args;
  }
  location ~ ^/index\.php(/|$) {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_split_path_info ^(.+\.php)(/.*)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
    fastcgi_param DOCUMENT_ROOT $realpath_root;
    internal;
  }
  location ~ \.php$ {
    return 404;
  }
  client_max_body_size 6m;
}

でファイルして終了保存:+ W+ Q

次にsylius.conf、メインnginx.confファイルに含める必要があります。

sudo vim /usr/local/etc/nginx/nginx.conf次の行を実行してhttp {}ブロックに追加します。

include sylius.conf;

構成をテストします。

sudo nginx -t

Nginxをリロードします。

sudo service nginx restart

Composerをインストールする

Composerをグローバルにインストールします。

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

バージョンを確認してください。

composer --version
# Composer version 1.9.0 2019-08-02 20:55:32

Node.jsをインストールする

Node.jsをインストールします。

sudo pkg install -y node

バージョンを確認してください。

node --version
# v12.4.0

糸をインストール

Yarnパッケージマネージャーをインストールします。

sudo pkg install -y yarn

バージョンを確認してください。

yarn --version
# 1.16.0

Syliusをインストールする

ドキュメントルートディレクトリを作成します。

sudo mkdir -p /usr/local/www/sylius

/usr/local/www/syliusディレクトリの所有権をに変更しjohndoeます。

sudo chown -R johndoe:johndoe /usr/local/www/sylius

ドキュメントルートフォルダーに移動します。

cd /usr/local/www/sylius

次のコマンドを実行して、新しいSyliusプロジェクトを開始します。

composer create-project sylius/sylius-standard .

実行vim .env.localしてデータベースの詳細を入力し、選択した環境でSyliusを実行します。

APP_ENV=prod
DATABASE_URL=mysql://username:[email protected]/dbname

注: 置き換えusernamepasswordおよびdbnameデータベースの詳細を。

すべての準備が整ったら、次のコマンドを実行してSyliusをインストールします。

php bin/console sylius:install -e prod 

完全に機能するフロントエンドを表示するには、そのアセットをインストールする必要があります。SyliusはGulpを使用して、JavaScriptパッケージマネージャーとしてYarnを使用するフロントエンドアセットを構築します。Yarnをインストールしたら、プロジェクトディレクトリに移動して依存関係をインストールします。

yarn install

次に、以下を実行してフロントエンドアセットをビルドします。

yarn build

/usr/local/www/syliusディレクトリの所有権をに変更しwwwます。

sudo chown -R www:www /usr/local/www/sylius

/var/lib/php/session/ディレクトリを作成し、所有権をに変更しwwwます。

sudo mkdir -p /var/lib/php/session && sudo chown -R www:www /var/lib/php/session

PHP-FPMサービスを再起動します。

sudo service php-fpm restart

Sylius e-commerceプラットフォームがインストールされています。デフォルトでは、管理パネルはにルーティングされ/adminます。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。