GNU/Linux >> Linux の 問題 >  >> Ubuntu

Nginxを使用してMagento2をインストールし、Ubuntu20.04LTSでSSLを暗号化する方法

Magentoは、PHPZendFrameworkに基づくeコマースWebサイト向けに広く使用されているオープンソースのeコマースソフトウェアおよびコンテンツ管理システムです。データベースバックエンドとしてMySQLまたはMariaDBを使用します。 Magentoの開発はVarienによって2008年に開始されました。

このチュートリアルでは、最新バージョンのUbuntu20.04にMagento2をインストールする方法を段階的に説明します。 MagentoをLEMPスタック、Nginx Webサーバー、PHP-FPM 7.3、およびMariaDBサーバーの下にインストールします。

要件

このチュートリアルでは、2 GBのRAM、50 GBの空きディスク容量、2つのCPUを搭載したUbuntu20.04システムにMagento2をインストールします。

何をしますか?

  • NginxWebサーバーをインストールする
  • PHP-FPM7.3のインストールと構成
  • MySQLサーバーのインストールと構成
  • PHPComposerをインストールする
  • Magentoをダウンロードしてインストールする
  • SSLLetsencryptを生成する
  • Magento用のNginx仮想ホストのセットアップ
  • Magentoのインストール後
ステップ1-Nginxウェブサーバーをインストールする

まず、NginxWebサーバーをUbuntu20.04システムにインストールします。

以下のaptコマンドを使用してNginxをインストールします。

 sudo apt install nginx 

すべてのインストールが完了したら、Nginxサービスを開始し、システムブートに追加します。

 systemctl start nginx 
systemctl enable nginx

その後、次のコマンドを使用してNginxサービスのステータスを確認します。

 systemctl status nginx 

NginxWebサーバーはUbuntu20.04サーバーで稼働しています。

次に、UbuntuシステムでHTTPポートとHTTPSポートを開きます。

以下のufwコマンドを実行します。

 for svc in ssh http https 
do
ufw allow $ svc
done

その結果、SSH、HTTP、およびHTTPSサービスがufwファイアウォールルールに追加されました。

次に、次のコマンドを使用してufwファイアウォールを有効にします。

 ufw enable 

'y'と入力します Enterキーを押すと、ufwファイアウォールが有効になります。

ステップ2-PHP-FPm7.3をインストールして構成する

Nginx Webサーバーをインストールした後、PHP-FPMをUbuntu20.04サーバーにインストールします。

デフォルトでは、Ubuntu20.04には最新バージョンのPHP/PHP-FPM7.4が付属しています。しかし今のところ、MagentoはPHP /PHP-FPM7.3でのみ動作します。このステップでは、PPAリポジトリからPHP-FPM7.3をインストールします。

先に進む前に、「software-properties-common」パッケージをインストールし、次のコマンドを使用してPHP7.3のPPAリポジトリを追加します。

 sudo apt install software-properties-common 
sudo add-apt-repository ppa:ondrej / php

'add-apt-repository'は、システム上のすべてのリポジトリを自動的に更新します。

次に、以下のaptコマンドを使用してPPAリポジトリからPHP-FPM7.3パッケージをインストールします。

 sudo apt install php7.3-fpm php7.3-common php7.3-curl php7.3-cli php7.3-mysql php7.3-gd php7.3-xml php7.3-json php7.3- intl php-pear php7.3-dev php7.3-common php7.3-mbstring php7.3-zip php7.3-soap php7.3-bcmath php7.3-opcache -y 

そして、PHP-FPM7.3のインストールが完了しました。

その後、「/ etc / php / 7.3」ディレクトリに移動し、PHP-FPMの「php.ini」構成を編集します。

 cd /etc/php/7.3/ 
vim fpm / php.ini

コメントを外して、以下のように構成を変更します。

 date.timezone =Asia / Singapore 
memory_limit =1G
max_execution_time =1800
zlib.output_compression =On
cgi.fix_pathinfo =0

opcache.enable =1
opcache.save_comments =1

保存して閉じます。

次に、PHP-FPMサービスを開始し、システムブートに追加します。

 systemctl start php7.3-fpm 
systemctl enable php7.3-fpm

PHP-FPMサービスが稼働しています。以下のコマンドを使用して、サービスを確認してください。

 ss -xa | grep php 
systemctl status php7.3-fpm

その結果、PHP-FPMはUbuntu 20.04サーバーで稼働しており、sockファイル「/run/php/php7.3-fpm.sock」で実行されています。

ステップ3-MariaDBサーバーをインストールして構成する

このステップでは、MariaDBデータベースサーバーをインストールし、MariaDBのデフォルトのrootパスワードを設定し、Magentoの新しいデータベースとユーザーを作成します。

以下のaptコマンドを使用して、MariaDBサーバーパッケージをUbuntu20.04にインストールします。

 sudo apt install mariadb-server 

すべてのインストールが完了したら、MariaDBサービスを開始し、システムブートに追加します。

 systemctl start mariadb 
systemctl enable mariadb

MariaDBサービスが稼働しています。

次に、「mysql_secure_instalaltion」ユーティリティを使用してMariaDBルートパスワードを設定します。

以下の「mysql_secure_instalaltion」コマンドを実行します。

 mysql_secure_installation 

MariaDB rootユーザーの強力なパスワードを入力し、すべての構成に「Y」を入力します。

ルートパスワードを設定しますか? [Y / n] Y 
匿名ユーザーを削除しますか? [Y / n] Y
rootログインをリモートで禁止しますか? [Y / n] Y
テストデータベースを削除してアクセスしますか? [Y / n] Y
特権テーブルを今すぐリロードしますか? [Y / n] Y

その結果、MariaDBルートパスワードが構成されました。

次に、Magentoインストール用の新しいデータベースとユーザーを作成します。

以下のmysqlコマンドを使用してMariaDB/MySQLシェルにログインします。

 mysql -u root -p 

次に、Magentoインストール用の新しいデータベースを作成します。データベース「magentodb」とユーザー「magentouser」をパスワード「magentodbpass」で作成します。

以下のMySQLクエリを実行します。

 create database magentodb; 
create user [email protected]'localhost'identified by'magentopassdb';
magentodb。*のすべての権限を[emailprotected]'localhost';
フラッシュ権限;

次に、「exit」と入力してMySQLシェルからログアウトします。

その結果、Magentoをインストールするための新しいデータベースとユーザーが完成しました。

ステップ4-Composerをインストールする

Composerは、PHPの依存関係マネージャーです。これは、PHPのアプリケーションレベルのパッケージマネージャーであり、追加のPHP依存関係とライブラリをPHPプロジェクトにダウンロードできます。

このステップでは、UbuntuリポジトリからPHPComposerをインストールします。

以下のaptコマンドを使用してComposerをインストールします。

 sudo apt install composer -y 

インストールが完了したら、以下のコンポーザーのバージョンを確認してください。

 composer --version 

以下はあなたが得る応答です。

作曲家1.10.12020-03-1320:34:27 

ご覧のとおり、Composer1.10はubuntu20.04サーバーにインストールされています。

ステップ5-Magento2をダウンロードしてインストールする

このステップでは、Magento 2と、Composerを使用して必要なすべてのPHPパッケージをダウンロードしてインストールします。

まず、「/ var / www /」ディレクトリに移動し、以下のようにwgetコマンドを使用してMagento 2.3.5 CE(Community Edition)ソースコードをダウンロードします。

 cd / var / www / 
wget -q https://github.com/magento/magento2/archive/2.3.5.tar.gz

すべてが完了したら、Magentoソースコードを抽出し、抽出したディレクトリの名前を「magento2」ディレクトリに変更します。

 tar -xf 2.3.5.tar.gz 
mv magento2-* / magento2 /

次に、Magentoのインストールディレクトリ'/ var / www / magento2'に移動し、以下のComposerコマンドを使用してMagentoのすべてのPHPパッケージの依存関係をインストールします。

 cd / var / www / magento2 / 
composer install

すべてのインストールが完了したら、Magento2インストールディレクトリの所有権をユーザー「www-data」に固定します。

 chown -R www-data:www-data / var / www / magento2 

その結果、Magento2とすべてのパッケージの依存関係のインストールが完了しました。

ステップ6-SSLLetsencryptを生成する

このチュートリアルでは、SSLLetsencryptを使用してMagento2のインストールを保護します。このステップでは、certbotコマンドを使用してSSLLetsencryptを生成します。また、ドメイン名がサーバーのIPアドレスに解決されていることを確認してください。

以下のaptコマンドを使用してcertbotツールをインストールします。

 sudo apt install certbot 

インストールが完了したら、Nginxサービスを停止します。

 systemctl stop nginx 
certbot certonly --standalone --agree-tos --no-eff-email --email [email protected] -d magento.hakase-labs.io

すべてが完了すると、SSL証明書は「/etc/letsencrypt/live/magento.your-domain.com」ディレクトリにあります。

その結果、Magento2インストール用のSSLLetsencryptが生成されました。

ステップ7-Magento2用にNginx仮想ホストを設定する

このステップでは、Magento2用の新しいNginx仮想ホスト構成を追加します。

'/ etc / nginx / sites-available /'ディレクトリに移動し、vimエディターを使用して新しい構成'magento'を作成します。

 cd / etc / nginx / sites-available / 
vim magento

次の構成を貼り付けます。

 upload fastcgi_backend {
server unix:/run/php/php7.3-fpm.sock;
}

server {
listen 80;
listen [::]:80;
server_name magento.hakase-labs.io;
return 301 https:// $ server_name $ request_uri;
}

server {

listen 443 ssl http2;
server_name magento.hakase-labs.io;

ssl_certificate /etc/letsencrypt/live/magento.hakase-labs .io / fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/magento.hakase-labs.io/privkey.pem;

set $ MAGE_ROOT / var / www / magento2;
$MAGE_MODE開発者を設定します;
include /var/www/magento2/nginx.conf.sample;
}

保存して閉じます。

次に、Magento Nginx仮想ホストをアクティブ化し、nginx構成をテストして、エラーがないことを確認します。

 ln -s / etc / nginx / sites-available / magento / etc / nginx / sites-enabled / 
nginx -t

次のコマンドを使用して、Nginxサービスを再起動します。

 systemctl restart nginx 

その結果、Magento 2のNginx仮想ホスト構成が作成され、有効になりました。

ステップ8-Magentoのインストール後

Webブラウザーを開き、アドレスバーにMagentoのインストールドメイン名を入力します。

https://magento.hakase-labs.io/

これで、HTTPSの安全な接続に戻り、Magentoのウェルカムページと利用規約が表示されます。

[同意してMagentoをセットアップする]をクリックします 'ボタンをクリックして続行します。

[準備チェック]ページで、すべての要件が緑色であることを確認し、[次へ]をクリックします 'ボタン。

上記で作成したMariaDBデータベースとユーザーの詳細を入力し、[次へ]をクリックします '。

「Web構成」の場合は、すべてのHTTPプロトコルをHTTPSに変更し、必ず「Magento管理者アドレス」を変更してください。

次に、[詳細オプション]をクリックしてすべてのHTTPSオプションにマークを付け、[Apache Rewrites]オプションのマークを外して、[次へ]をクリックします。 'ボタンをもう一度。

次に、Magentoの[ストアのカスタマイズ]構成で、デフォルトのままにして、[次へ]をクリックします 'ボタン。

次に、詳細管理ユーザー、電子メール、およびパスワードを入力します。次に、次へをクリックします ボタン。

「今すぐインストール」をクリックします ボタンをクリックしてMagento2ストアをインストールします。

これで、すべてのインストールにエラーが発生しないようにします。

すべてのインストールが完了すると、'成功が得られます '以下のページ。

'MagentoAdminの起動をクリックします 'Magento管理ダッシュボードにログインします。

次に、Magento管理者のユーザーとパスワードを入力し、[サインイン]をクリックします。 以下のようにMagento管理ダッシュボードが表示されます。

Magentoのデフォルトのインデックスページの場合は、[新しい]タブを開き、アドレスバーにドメイン名を入力します。

以下はMagentoのデフォルトのインデックスページです。

その結果、Magento2のインストールが完了しました。

次に、サーバーシェルに戻り、Magento Cronをセットアップし、Magentoインストールディレクトリへの書き込み権限を削除します。

Magento cronを設定するには、以下のコマンドを実行します。

 cd / var / www / magento2 
sudo -u www-data php bin / magento cron:install --force

Magentocronはユーザー「www-data」で実行されます。次のコマンドを使用して確認してください。

 crontab -u www-data -l <​​/ pre> 

その結果、MagentoCronがシステムに追加されました。

次に、「/ var / www / magento2 / app/etc」ディレクトリの書き込み権限を削除する必要があります。

以下のchmodコマンドを実行します。

 chmod u-w / var / www / magento2 / app / etc 

そして最後に、最新のUbuntu20.04へのNginxWebサーバー、MariaDBサーバー、PHP-FPM7.3を使用したMagento2のインストールが正常に完了しました。


Ubuntu
  1. Nginxを使用してNextcloudをインストールし、Ubuntu20.04LTSでSSLを暗号化する方法

  2. Ubuntu18.04にNginxとLetsencryptを使用してMagento2をインストールする方法

  3. Ubuntu16.04にNginxを使用してMagentoをインストールする方法

  1. NGINXを使用してShopwareをインストールし、Ubuntu18.04LTSで暗号化する方法

  2. Nginxを使用してAutomadCMSをインストールし、Ubuntu18.04でSSLを暗号化できるようにします

  3. Nginxを使用してGravCMSをインストールし、Ubuntu18.04LTSに暗号化する方法

  1. Nginxを使用してX-Cartをインストールし、Ubuntu18.04LTSでSSLを暗号化する方法

  2. Nginxを使用してDrupalをインストールし、Ubuntu20.04LTSでSSLを暗号化する方法

  3. Webminをインストールし、Ubuntu20.04LTSでLetsEncryptSSLを使用して保護する方法