ウェブサイト検索

Debian 11にBagisto eCommerceをインストールする方法


Debian 11にBagisto eCommerceをインストールする方法

このページで

  1. 前提条件
  2. LEMPスタックのインストール
  3. MariaDBのルートパスワードの設定
  4. Bagiostoの新しいデータベースとユーザーの設定
  5. Composerツールのインストール
  6. Composerを使用したBagisto eCommerceのインストール
  7. Nginxウェブサーバーの設定
  8. Bagisto eコマースを確認する
  9. 結論

BagistoはLaravel PHPフレームワークで書かれた無料のオープンソースeコマースソフトウェアで、Vue.js - プログレッシブなJavaScriptフレームワークを使用しています。Bagistoは、あっという間にオンラインストアを構築することができるハンドメイドのeコマースです。高速でレスポンシブ、魅力的なフロントエンドで、使いやすいです。Bagistoは、さまざまな言語のための複数のロケール、複数の通貨、複数のストアテーマをサポートし、マルチストア在庫システムという機能も提供するeコマースフレームワークです。

このチュートリアルでは、Debian 11 Bullseye に Bagisto eCommerce をインストールする方法を説明します。PHP-FPM、Nginx ウェブサーバー、および MariaDB データベースを使用します。

前提条件

  • 最新のDebian 11 Bullseyeのバージョン。
  • ルート/スudo権限を持つユーザー。
  • ドメイン名があなたのサーバーのIPアドレスを指している。

LEMPスタックのインストール

最初に、DebianサーバーにLEMPスタックをインストールします。現在のBagisto eCommerceのバージョンは、PHP 7.4以上、MariaDB 10.2.17以上、およびNginxウェブサーバーを必要とします。

パッケージのインストールを開始する前に、次のコマンドを使用してリポジトリを更新してください。

sudo apt update

次に、以下のaptコマンドを使用してPHP-FPM、Nginxウェブサーバー、およびMariaDBデータベースをインストールします。

sudo apt install nginx-full mariadb-server php-fpm php-cli php-common php-zip php-mysql php-gd php-intl php-curl php-imap php-mbstring php-xml php-json libpcre3 git unzip -y

すべてのパッケージのインストールが完了したら、nanoエディタを使用してPHP設定の「php.ini」を編集します。

sudo nano /etc/php/7.4/fpm/php.ini
sudo nano /etc/php/7.4/cli/php.ini

現在の環境で次のオプションを変更してください。

memory_limit = 512M
max_execution_time = 360
date.timezone = America/Toronto

次に、PHP-FPMサービスを再起動して新しい設定を適用します。

sudo systemctl restart php7.4-fpm

そして、Bagisto eCommerceに使用される基本的なLEMPスタックのインストールを完了しました。

MariaDBのルートパスワードの設定

DebianサーバにLAMPスタックをインストールした後、MariaDBデータベースのルートパスワードを設定します。MariaDBのルートパスワードを設定するための推奨方法は、コマンドラインツール「mysql_secure_installation」を使用することです。

以下の 'mysql_secure_installation' コマンドを実行してください。

mysql_secure_installation

これからいくつかの質問をされます:

  • Rootパスワードを設定するには、ENTERを押してください。
  • Yを入力して、unix_socket_authentication方式を使用してルートユーザー認証を切り替えます。
  • Yを入力してMariaDBのルートパスワードを設定し、次にパスワードを入力してもう一度繰り返します。

  • 「Y」と入力して、MariaDBの匿名ユーザーを削除します。
  • Yと入力して、rootユーザーのリモートログインを無効にします。
  • Y と再度入力して、すべての権限を持つデフォルトデータベースtestを削除してください。
  • Yを入力して、すべてのテーブル権限を再読み込みし、新しい変更を適用します。

そして、あなたはMariaDBデータベースの基本的な安全なデプロイメントを完了しました。

Bagiostoの新しいデータベースとユーザーの設定

MariaDBデータベースの設定が完了したら、Bagisto eCommerce用に新しいデータベースとユーザーを作成します。新しいデータベースとユーザーを作成するには、MariaDBシェルにログインする必要があります。

次のコマンドを使用して、ユーザー 'root' として MariaDB シェルにログインします。

mysql -u root -p

次に、以下のクエリを実行して新しいデータベース「basgisto」とユーザー「bagistouser」を作成し、パスワード「BagistoPassword」を設定します。

CREATE DATABASE bagisto;
CREATE USER bagistouser@localhost IDENTIFIED BY 'BagistoPassword';

次に、データベースユーザー<strong>bagistouser</strong>にデータベース<strong>bagisto</strong>へのアクセスおよび書き込みを許可し、すべてのテーブル特権を再読み込みします。これはMariaDBの特権に対する新しい変更を適用するために必要です。

GRANT ALL ON bagisto.* TO bagistouser@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;

今すぐ <em>exit</em> と入力してMariaDBシェルからログアウトしてください。そして、Bagistoのインストールのために新しいデータベースとユーザーを作成しました。

Composerツールのインストール

このステップでは、Debian システムに Composer をインストールします。Composer は Bagisto eCommerce のインストールに必要です。

以下の php コマンドを実行して、Composer のインストーラスクリプトをダウンロードします。また、このコマンドはインストーラスクリプトを検証します。画面に 「インストーラーが確認されました」 のメッセージが表示されることを確認してください。

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

次に、インストーラスクリプト「composer-setup.php」を実行してComposerをインストールし、その後スクリプト「composer-setup.php」を削除してください。

php composer-setup.php
php -r "unlink('composer-setup.php');"

インストーラースクリプトはバイナリファイル「composer.phar」をダウンロードします。「composer.phar」を「/usr/local/bin/composer」に移動して名前を変更してください。

sudo mv composer.phar /usr/local/bin/composer

Composerのインストールを確認するには、以下の「composer」コマンドを実行してください。

sudo -u www-data composer --version

下のスクリーンショットのように、Composerの出力バージョンが得られます。

サーバーにComposerをインストールしたので、これからComposerを使ってBagisto eCommerceをインストールする準備が整いました。

Composerを使用したBagisto eCommerceのインストール

このステップでは、Composerを使用してBagisto eCommerceを手動でインストールします。

/var/www/ ディレクトリ内に新しいディレクトリ '.cache' と '.config' を作成し、両方のディレクトリの所有権を 'www-data' に変更します。これらは Composer のキャッシュと設定を保存するために使用されます。

mkdir -p /var/www/{.cache,.config}
sudo chown -R www-data:www-data /var/www/{.cache,.config}

次に、'/var/www/project' ディレクトリを作成し、所有権を 'www-data' に変更します。このディレクトリに Bagisto eCommerce をインストールします。

mkdir -p /var/www/project; sudo chown -R www-data:www-data /var/www/project

'/var/www/project'に現在の作業ディレクトリを移動し、以下のComposerコマンドを実行してBagistoのソースコードとすべての追加PHP依存関係をダウンロードしてインストールしてください。

cd /var/www/project
sudo -u www-data composer create-project bagisto/bagisto

ダウンロードプロセスが完了すると、以下の出力が得られます。

次に、'/var/www/project/bagisto' ディレクトリに移動し、nanoエディタを使用して '.env' ファイルを編集します。

cd /var/www/project/bagisto
sudo nano .env

APP_NAMEを自分の情報に変更し、APP_ENVをproductionに設定してください。

APP_NAME=Bagisto
APP_ENV=production

APP_DEBUGをfalseに変更し、APP_URLにインストールURLを入力してください。

APP_DEBUG=false
APP_URL=https://www.example.io

以下のように、あなたのBagistoインストールの詳細なデータベースをタイプしてください。

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=bagisto
DB_USERNAME=bagistouser
DB_PASSWORD=BagistoPassword
DB_PREFIX=

設定を保存して終了します。

次に、以下のコマンドを使用してBagisto eCommerceをインストールします。

sudo -u www-data php artisan bagisto:install

インストールコマンドを実行することを確認するよう求められます。確認するには「はい」と入力してください。

はいと入力してください。そうすれば、Bagisto eCommerceを本番環境に展開します。

インストールプロセスが完了すると、Bagistoインストール用のデフォルトの管理者ユーザーとパスワードが取得できます。

最後に、以下のコマンドを実行して、Bagistoインストールディレクトリ「/var/www/project/bagisto」の所有者が「www-data」であることを確認できます。

sudo chown -R www-data:www-data /var/www/project/bagisto

これでBagisto eCommerceのインストールが完了しました。次のステップではNginxウェブサーバーの設定に進んでください。

Nginxウェブサーバーの設定

このステップでは、Bagisto eCommerce用の新しいNginxサーバーブロックを作成します。Nginxウェブサーバーは、軽量で高速であるため、eCommerceのような複雑なCMSを扱うのに最適なソリューションの一つです。

nanoエディタを使用して、新しいサーバーブロック構成「bagisto」を作成します。

sudo nano /etc/nginx/sites-available/bagisto

以下の設定をコピーして貼り付けてください。URLおよびSSL証明書のパスを自分のもので変更することを忘れないでください。

server {
    listen 80;
    server_name example.io;
    return 302 https://$server_name$request_uri;
}
server {
  listen 443 ssl http2;
    server_name  example.io;
    root   /var/www/bagisto/public;
    index  index.php;
  ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem;
  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
  ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0
  ssl_session_timeout  10m;
  ssl_session_cache shared:SSL:10m;
  ssl_session_tickets off; # Requires nginx >= 1.5.9
  # ssl_stapling on; # Requires nginx >= 1.3.7
  # ssl_stapling_verify on; # Requires nginx => 1.3.7
  resolver 8.8.8.8 8.8.4.4 valid=300s;
  resolver_timeout 5s;
  add_header X-Frame-Options DENY;
  add_header X-Content-Type-Options nosniff;
  add_header X-XSS-Protection "1; mode=block";
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;
    client_max_body_size 100M;
    autoindex off;
    location / {
    try_files $uri /index.php$is_args$args;
      }
    location ~ \.php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
         include fastcgi_params;
         fastcgi_intercept_errors on;
    }
}

設定ファイルを保存して終了します。

次に、次のコマンドを使用して「bagisto」サーバーブロックをアクティブにし、その後Nginxの設定を確認してください。

sudo ln -s /etc/nginx/sites-available/bagisto /etc/nginx/sites-enabled/
sudo nginx -t

エラーが発生しなければ、'構文は正しい'という出力メッセージが表示されます。

最後に、新しいバーチャルホスト構成を適用するためにNginxサービスを再起動します。

sudo systemctl restart nginx

これで、Bagisto eCommerceのためのNginx設定が完了し、あなたのドメイン名の下でアクセスできるようになりました。

Bagisto eCommerceを確認する

Bagisto eCommerceのインストールを確認するには、ウェブブラウザを開き、アドレスバーにインストールのドメイン名を入力してください。

https://www.example.io/

以下に示すように、Bagisto eCommerceのデフォルトホームページが表示されます。

次に、新しいタブを開いて、Bagisto eCommerce インストールの管理ページにアクセスしてください。

https://www.example.io/admin

Bagisto のデフォルトユーザー admin とパスワード admin123 を入力し、サインイン をクリックしてください。

そして、あなたはBagisto eCommerceの管理ダッシュボードを手に入れることができます。

結論

おめでとうございます!あなたは現在、Debian 11 BullseyeシステムにPHP-FPM、Nginx、およびMariaDBを使用してBagisto eCommerceをインストールしました。これで、製品の追加やBagisto eCommerce用の支払いプラグインの設定を始めることができます。

関連記事: