X-Cart 5をFreeBSD 12にインストールする方法

X-Cartは、数多くの機能と統合を備えた非常に柔軟なオープンソースのeコマースプラットフォームです。X-CartソースコードはGithubでホストされています。このガイドでは、WebサーバーとしてNginxを、データベースサーバーとしてMariaDBを使用して、X-Cart 5をFreeBSD 12 LTS Vultrインスタンスにインストールするプロセスについて説明します。

必要条件

  • PHPバージョン7.2以降
  • PHPエクステンション:pdopharmysqlmbstringcurl
  • MySQLバージョン5.7.7以降またはMariaDB相当
  • Nginx

あなたが始める前に

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

uname -ro
# FreeBSD 12.1-RELEASE-p2

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 php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-phar php72-soap php72-xmlrpc php72-opcache php72-mysqli php72-bcmath php72-gmp php72-exif php72-imap php72-pecl-APCu

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

php -v
# PHP 7.2.28 (cli) (built: Feb 22 2020 01:13:39) ( NTS )

インストールされているPHP拡張機能を確認します。

php -m

# mbstring
# curl
# gd
# PDO
# mysqli
# openssl
# . . .

ソフトリンク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

MariaDBをインストールする

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

sudo pkg install -y mariadb102-client mariadb102-server

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

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

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

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

mysql_secure_installationスクリプトを実行して、MariaDBインストールのセキュリティを向上させます。

sudo mysql_secure_installation

rootユーザーとしてMariaDBにログインします。

sudo mysql -u root -p
# Enter password:

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

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

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

X-cartで使用するようにNginxを構成します。

sudo vim /usr/local/etc/nginx/xcart.conf

そして、以下の設定をファイルに入力します。

server {
  listen 80;
  listen [::]:80;
  root /usr/local/www/xcart;
  index index.php index.html index.htm;
  server_name example.com;
  location @handler {
    index cart.php;
    rewrite ^/sitemap.xml(\?.+)?$ /cart.php?target=sitemap;
    rewrite ^/(.*)$ /cart.php?url=$1 last;
  }
  location / {
    try_files $uri $uri/ @handler;
  }
  location ~ \.php$ {
    try_files $uri @handler;
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index index.php;
    fastcgi_pass 127.0.0.1:9000;
    include fastcgi_params;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }
}

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

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

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

include xcart.conf;

構成をテストします。

sudo nginx -t

Nginxをリロードします。

sudo service nginx restart

X-Cartをインストールする

移動し/usr/local/wwwたディレクトリ。

cd /usr/local/www

X-Cartの最新リリースをローカルワークステーションにhttps://www.x-cart.com/download.htmlからダウンロードします

SFTPを使用してX-Cartパッケージをサーバーにアップロードします。こちらのSFTPの手順をご覧ください。ファイルを/ var / www /ディレクトリに配置します。この例では、ファイル名はx-cart-5.4.0.10-en.tgzですが、実際のファイル名は異なる場合があります。

X-Cartパッケージを解凍します。

sudo tar -xzpf x-cart-5.4.0.10-en.tgz
sudo rm x-cart-5.4.0.10-en.tgz

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

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

移動しexample.com/install.php、Webブラウザで、インストールを完了するために指示に従ってください。



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の未来は、日々成長を続けています。