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

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

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

このチュートリアルでは、データベースとしてNginx、PHP 7.1 FPM、およびMySQLを使用してMagento2をインストールする方法を示します。サーバーのオペレーティングシステムとしてubuntu18.04(Bionic Beaver)を使用します。最小限のサーバー設定をまだ行っていない場合は、このチュートリアルを参照して、適切な基本設定を取得してください。

前提条件
  • Ubuntu 18.04
  • 2GB以上のRAMメモリ
  • root権限
何をするか
  1. Ubuntu18.04にNginxをインストールする
  2. PHP-FPM7.1のインストールと構成
  3. MySQLサーバーのインストールと構成
  4. Magento2のインストールと構成
    1. PHPComposerをインストールする
    2. Magento2をダウンロード
    3. Magentoコンポーネントをインストールする
    4. SSLLetsencryptを生成する
    5. Magento用にNginx仮想ホストを構成する
    6. Magentoのインストール後
  5. テスト
ステップ1-Ubuntu18.04LTSにNginxをインストールします

このチュートリアルでは、MagentoのインストールにNginxWebサーバーを使用します。

サーバーにログインし、リポジトリを更新して、すべてのパッケージをアップグレードします。

 sudo apt update 
sudo apt upgrade

次に、以下のaptコマンドを使用してNginxWebサーバーをインストールします。

 sudo apt install nginx -y 

インストールが完了したら、Nginxサービスを開始し、システムの起動時に毎回起動できるようにします。

 systemctl start nginx 
systemctl enable nginx

Nginx Webサーバーがインストールされているので、netstatコマンドを使用して確認し、HTTPポート80が「LISTEN」状態になっていることを確認します。もう1つの方法は、以下のようにcurlコマンドを使用することです。

 netstat -plntu 
curl -I localhost

ステップ2-PHP-FPM7.1のインストールと構成

Nginx Webサーバーのインストール後、MagentoはまだPHP 7.2をサポートしていないため、サーバーにPHP7.1をインストールします。 Magento2に必要なすべての拡張機能を備えたPHP-FPMをインストールします。

Magento 2のインストールに必要なPHP拡張機能のリスト:

  • bc-math
  • ctype
  • カール
  • dom
  • gd、ImageMagick 6.3.7(またはそれ以降)またはその両方
  • intl
  • mbstring
  • mcrypt
  • ハッシュ
  • openssl
  • PDO / MySQL
  • SimpleXML
  • 石鹸
  • spl
  • libxml
  • xsl
  • zip
  • json
  • iconv

このガイドでは、PPAリポジトリからPHP-FPMパッケージをインストールします。 'ondrej/php'リポジトリを使用します。

'software-properties-common'パッケージをインストールし、以下のコマンドを使用して' ondrej/php'リポジトリを追加します。

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

次に、必要なすべての拡張機能を備えたPHP-FPM7.1をインストールします。

 sudo apt install php7.1-fpm php7.1-mcrypt php7.1-curl php7.1-cli php7.1-mysql php7.1-gd php7.1-xsl php7.1-json php7.1- intl php-pear php7.1-dev php7.1-common php7.1-mbstring php7.1-zip php7.1-soap php7.1-bcmath -y 

インストールが完了したら、PHPコマンドを使用してPHPのバージョンとインストールされている拡張機能を確認します。

 php -v 
php -me

次に、PHP-FPMおよびPHP-CLI用にphp.iniファイルを構成します。

vimを使用してphp.iniファイルを編集します。

 vim /etc/php/7.1/fpm/php.ini 
vim /etc/php/7.1/cli/php.ini

これらの行の値を次のように変更します。

 memory_limit =512Mmax_execution_time =180zlib.output_compression=オン

保存して終了します。

次に、PHP-fpmサービスを再起動し、システムの起動時に毎回起動できるようにします。

 systemctl restart php7.1-fpm 
systemctl enable php7.1-fpm

PHP-FPM 7.1のインストールと構成が完了しました。netstatコマンドを使用して、サービスを確認してください。

 netstat -pl | grep php 

そして、次のようにPHP-fpmsocksファイルを取得します。

ステップ3-MySQLサーバーのインストールと構成

MagentoソフトウェアにはMySQL5.6.xが必要であり、Magento2.1.2以降にはMySQL5.7.xが必要です。このチュートリアルでは、Ubuntu18.04システムに最新のMySQLサーバー5.8をインストールします。

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

 sudo apt install mysql-server mysql-client -y 

インストールが完了したら、MySQLサービスを開始し、システムの起動時に毎回起動できるようにします。

 systemctl start mysql 
systemctl enable mysql

次に、「mysql_secure_installation」コマンドを使用してMySQLルートパスワードを構成します。

 mysql_secure_installation 

このMySQL5.8バージョンでは、MySQLパスワードポリシーのセキュリティが改善されています。パスワードポリシーを選択する必要があります。LOWポリシーの場合は0、MEDIUMポリシーの場合は1、STRONGパスワードポリシーの場合は2です。

このガイドでは、「MEDIUM」パスワードポリシーを使用します。本番サーバーでは「STRONG」パスワードポリシーを使用することをお勧めします。

番号「1」を選択してEnterキーを押し、新しいMySQLの「root」パスワードを入力します。

匿名ユーザーを削除しますか? ([はい]の場合はy | Yを押し、[いいえ]の場合は他のキーを押します):Y 
rootログインをリモートで禁止しますか? ([はい]の場合はy | Yを押し、[いいえ]の場合は他のキーを押します):Y
テストデータベースを削除してアクセスしますか? (はいの場合はy | Yを押し、いいえの場合は他のキーを押します):Y
特権テーブルを今すぐリロードしますか? (はいの場合はy | Yを押し、いいえの場合はその他のキーを押します):Y

MySQLルートパスワードが設定されました。

次に、Magentoインストール用の新しいデータベースを作成します。ユーザーが「magentouser」で、パスワードが「[email protected]#」の「magentodb」という名前の新しいデータベースを作成します。

rootユーザーを使用してMySQLシェルにログインします。

 mysql -u root -p 

次に、以下のMySQLクエリを実行して、データベースとユーザーを作成します。

データベースmagentodbを作成します;
「[emailprotected]#」で識別されるユーザー[emailprotected]を作成します;
「[emailprotected]で識別される[emailprotected]にmagentodb。*のすべての権限を付与します#';
フラッシュ権限;

MySQLサーバーのインストールとMagentoインストールの構成が完了しました。

ステップ4-Magento2をインストールして構成する

このステップでは、GithubリポジトリからMagento2.2.4の最新バージョンをインストールします。 MagentoコンポーネントをインストールするためのPHPComposerをインストールし、GithubリポジトリからMagentoをダウンロードし、Magento用にNginx仮想ホストを構成し、Webベースのポストインストールを使用してMagentoをインストールします。

-PHPComposerをインストールします

以下のaptコマンドを使用して、ubuntu18.04にPHPComposerをインストールします。

 sudo apt install composer -y 

インストールが完了したら、システムにインストールされているコンポーザーのバージョンを確認します。

作曲家-V

最新バージョンのPHPComposerがインストールされています。

-Magento2をダウンロード

'/ var / www'ディレクトリに移動し、wgetコマンドを使用してGithubからMagentoアーカイブソースコードをダウンロードします。

 cd / var / www / 
wget https://github.com/magento/magento2/archive/2.2.4.tar.gz

次に、Magentoアーカイブファイルを抽出し、ディレクトリの名前を「magento2」に変更します。

 tar -xf 2.2.4.tar.gz 
mv magento2-2.2.4 / magento2 /

Magentoのソースコードがダウンロードされ、「/ var / www/magento2」ディレクトリがMagentoサイトのWebルートになります。

-Magentoコンポーネントをインストールする

PHPコンポーザーを使用してMagentoコンポーネントをインストールします。 'magento2'ディレクトリに移動し、'composer'コマンドを使用してMagentoに必要なすべてのPHPコンポーネントをインストールします。

 cd / var / www / magento2 
composer install -v

インストールが完了すると、次のような結果が得られます。

-SSLLetsencryptを生成します

LetsencryptのSSLを使用してMagentoのインストールを保護します。以下のaptコマンドを使用してLetsencryptをインストールします。

 sudo apt install letsencrypt -y 

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

 systemctl stop nginx 

次に、以下のようにcertbotコマンドを使用してドメイン名のSSL証明書を生成します。

 certbot certonly --standalone -d magento.hakase-labs.pw 

メールアドレスを入力し、Letsencrypt TOSに同意してから、メール共有の場合は「N」と入力します。

完了すると、次のような結果が得られます。

LetsencryptSSL証明書ファイルは「/etc/letsencrypt/live」ディレクトリに生成されています。

-Nginx仮想ホストを構成する

'/ etc / nginx / sites-available'ディレクトリに移動し、vimを使用して新しい仮想ホストファイル'magento'を作成します。

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

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

 upload fastcgi_backend {server unix:/run/php/php7.1-fpm.sock;} server {listen 80;聞く[::]:80; server_name magento.hakase-labs.pw; return 301 https:// $ server_name $ request_uri;} server {listen 443 ssl; server_name magento.hakase-labs.pw; ssl on; ssl_certificate /etc/letsencrypt/live/magento.hakase-labs.pw/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/magento.hakase-labs.pw/privkey.pem; $ MAGE_ROOT / var / www/magento2を設定します; $MAGE_MODE開発者を設定します。 /var/www/magento2/nginx.conf.sample;}
を含める

構成を保存して終了します。

次に、Magento仮想ホストファイルの「sites-enabled」ディレクトリへのシンボリックリンクを作成して、仮想ホストをアクティブ化します。

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

nginx構成ファイルをテストし、エラーがないことを確認します。

 nginx -t 

次に、PHP-FPMとNginxサービスを再起動します。

 systemctl restart php7.1-fpm 
systemctl restart nginx

そして、Magentoweb-rootディレクトリの所有者を「www-data」ユーザーとグループに変更します。

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

Magentoのnginx仮想ホストが追加されました。

-Magentoのインストール後

Webブラウザーを開き、MagentoのURLを入力します。私のは:

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

[利用規約]については、[同意してMagentoをセットアップする]ボタンをクリックしてください。

次に、Magentoの「ReadlinesCheck」のすべてのシステムとサーバーの構成をチェックし、以下のようにすべてのシステムと構成のチェックに「合格」していることを確認します。

次に、[次へ]ボタンをクリックします。

Magentoのデータベース構成-すべてのデータベース情報を入力し、[次へ]をクリックします。

Web構成の場合、「ストアアドレス」をHTTPSに変更し、「Magento管理者アドレス」を管理者パスURLで変更し、「ApacheRewrites」のチェックを外します。これはNginxWebサーバーを使用しているためです。

[次へ]ボタンをもう一度クリックします。

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

管理者ユーザーとパスワードを入力し、[次へ]をクリックします。

そして、[今すぐインストール]ボタンをクリックしてMagentoをインストールします。

インストールが完了すると、次のような「成功」の結果が得られます。

次に、「/ var / www / magento2 / app/etc」ディレクトリの書き込みアクセスを無効にする必要があります。以下のコマンドを実行します。

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

MagentoがUbuntu18.04BionicBeaverサーバーにインストールされました。

ステップ5-テスト

MagentoのURLホームページを入力し、Magentoのデフォルトのホームページを取得していることを確認します。私のは:https://magento.hakase-labs.pw/

次に、インストール中に定義されたURL「admin_hakase」にアクセスしてMagento管理ダッシュボードにログインします。私のは:

https://magento.hakase-labs.pw/admin_hakase/

ユーザー名とパスワードを入力し、[サインイン]ボタンをクリックします。

そして、以下のようにMagento管理ダッシュボードが表示されます。

Magento 2は、Nginx Webサーバー、MySQLデータベース、およびPHP-FPM7.1を使用してUbuntu18.04にインストールされています。

追加:

Magentoインデクサーのcronジョブが見つからないというエラーが発生した場合は、以下のコマンドを使用してcrontabスクリプトを生成することでエラーを解決できます。:

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

次に、「www-data」ユーザーのリストcrontabスクリプトを確認します。

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


Ubuntu
  1. Ubuntu18.04でApacheを使用してownCloudをインストールおよび構成する方法

  2. Ubuntu18.04にMagento2をインストールする方法

  3. Ubuntu11.10にPHP5とMySQLを使用してNginxをインストールする方法

  1. Ubuntu18.04LTSにNginxを使用してNextcloudをインストールする方法

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

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

  1. Ubuntu16.04にNginxでMediaWikiをインストールする方法

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

  3. Ubuntu15.04にPostgreSQLとNginxを使用してGitlabをインストールする方法