Nginx

Adobe Commerceは、nginx 1.x (または 最新のメインラインバージョン)をサポートしています。 また、php-fpm の最新バージョンをインストールする必要があります。

インストール手順は、使用しているオペレーティングシステムによって異なります。 詳しくは、PHP を参照してください。

Ubuntu

次の節では、nginx、PHP、MySQL を使用して、Ubuntu にAdobe Commerce 2.x をインストールする方法について説明します。

nginx のインストール

sudo apt -y install nginx

ソースから nginx を構築することもできます。

以下のセクションを完了し、アプリケーションをインストールしたら、サンプルの設定ファイルを使用して nginx を設定します。

php-fpm のインストールと設定

Adobe Commerceが正しく機能するには、いくつかの PHP 拡張が必要です。 nginx を使用している場合は、これらの拡張機能に加えて、php-fpm 拡張機能もインストールして設定する必要があります。

php-fpm をインストールして設定するには:

  1. php-fpmphp-cli をインストールします。

    code language-bash
    apt-get -y install php7.2-fpm php7.2-cli
    
    note note
    NOTE
    このコマンドは、利用可能な最新バージョンの PHP 7.2.X をインストールします。サポートされる PHP のバージョンについては、 システム要件を参照してください。
  2. エディターで php.ini のファイルを開きます。

    code language-bash
    vim /etc/php/7.2/fpm/php.ini
    
    code language-bash
    vim /etc/php/7.2/cli/php.ini
    
  3. 次の行に一致するように両方のファイルを編集します。

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe Commerceをテストする際は、メモリ制限を 2 G に設定することをお勧めします。 詳しくは、 必須の PHP 設定を参照してください。
  4. 保存して、エディターを終了します。

  5. php-fpm サービスを再起動します。

    code language-bash
    systemctl restart php7.2-fpm
    

MySQL のインストールと設定

詳細は、MySQL を参照してください。

インストールと設定

Adobe Commerceをダウンロードするには、次のようないくつかの方法があります。

この例は、コマンドラインを使用した Composer ベースのインストールを示しています。

  1. ファイルシステムの所有者として、アプリケーションサーバーにログインします。

  2. Web サーバーの docroot ディレクトリまたは仮想ホストの docroot として設定したディレクトリに移動します。 この例では、Ubuntu のデフォルト /var/www/html を使用しています。

    code language-bash
    cd /var/www/html
    
  3. Composer をグローバルにインストール Adobe Commerceをインストールする前に、依存関係を更新するために Composer が必要です。

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Adobe Commerce メタパッケージを使用して Composer プロジェクトを作成します。

    Magento Open Source

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
    

    Adobe Commerce

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
    

    プロンプトが表示されたら、 認証キーを入力します。 公開鍵 はユーザー名で、秘密鍵 はパスワードです。

  5. アプリケーションをインストールする前に、Web サーバーグループの読み取り/書き込み権限を設定します。 これは、コマンドラインがファイルをファイルシステムに書き込めるようにするために必要です。

    code language-bash
    cd /var/www/html/<magento install directory>
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
    
    code language-bash
    chown -R :www-data . # Ubuntu
    
    code language-bash
    chmod u+x bin/magento
    
  6. コマンドラインからをインストールします。 この例では、インストールディレクトリの名前が magento2ee で、db-host が同じマシン(localhost)上にあり、db-namedb-userdb-password がすべて magento であることを前提としています。

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=magento \
    --db-user=magento \
    --db-password=magento \
    --backend-frontname=admin \
    --admin-firstname=admin \
    --admin-lastname=admin \
    --admin-email=admin@admin.com \
    --admin-user=admin \
    --admin-password=admin123 \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1 \
    --search-engine=elasticsearch7 \
    --elasticsearch-host=es-host.example.com \
    --elasticsearch-port=9200
    
  7. 開発者モードに切り替えます。

    code language-bash
    cd /var/www/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

Nginx の設定

インストール ディレクトリおよび nginx 仮想ホストに用意されている nginx.conf.sample 設定ファイルを使用して、nginx を設定することをお勧めします。

これらの手順は、nginx 仮想ホストの Ubuntu のデフォルトの場所(例:/etc/nginx/sites-available)と Ubuntu のデフォルトの docroot (例:/var/www/html)を使用していることを前提としています。ただし、これらの場所は、環境に合わせて変更できます。

  1. サイトの新しい仮想ホストを作成します。

    code language-bash
    vim /etc/nginx/sites-available/magento
    
  2. 次の設定を追加します。

    code language-conf
    upstream fastcgi_backend {
      server  unix:/run/php/php7.2-fpm.sock;
    }
    
    server {
    
      listen 80;
      server_name www.magento-dev.com;
      set $MAGE_ROOT /var/www/html/magento2;
      include /var/www/html/magento2/nginx.conf.sample;
    }
    
    note note
    NOTE
    include ディレクティブは、インストールディレクトリ内のサンプル nginx 設定ファイルを指している必要があります。
  3. www.magento-dev.com を自分のドメイン名に置き換えます。 これは、Adobe Commerceのインストール時に指定したベース URL と一致する必要があります。

  4. 保存して、エディターを終了します。

  5. /etc/nginx/sites-enabled ディレクトリに新しい仮想ホストへのシンボリックリンクを作成して、新しく作成した仮想ホストをアクティベートします。

    code language-bash
    ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
    
  6. 構文が正しいことを確認します。

    code language-bash
    nginx -t
    
  7. nginx を再起動します。

    code language-bash
    systemctl restart nginx
    

インストールの確認

Web ブラウザーを開き、サイトのベース URL に移動して インストールを確認します。

CentOS 7

次の節では、nginx、PHP、および MySQL を使用して、CentOS 7 にAdobe Commerce 2.x をインストールする方法について説明します。

nginx のインストール

yum -y install epel-release
yum -y install nginx

インストールが完了したら、nginx を起動し、ブート時に起動するように設定します。

systemctl start nginx
systemctl enable nginx

以下のセクションを完了し、アプリケーションをインストールしたら、サンプルの設定ファイルを使用して nginx を設定します。

php-fpm のインストールと設定

Adobe Commerceが正しく機能するには、いくつかの PHP 拡張モジュールが必要です。 nginx を使用している場合は、これらの拡張機能に加えて、php-fpm 拡張機能もインストールして設定する必要があります。

  1. php-fpm のインストール:

    code language-bash
    yum -y install php70w-fpm
    
  2. /etc/php.ini ファイルをエディターで開きます。

  3. cgi.fix_pathinfo 行のコメントを解除し、値を 0 に変更します。

  4. 次の行に一致するようにファイルを編集します。

    code language-conf
    memory_limit = 2G
    max_execution_time = 1800
    zlib.output_compression = On
    
    note note
    NOTE
    Adobe Commerceをテストする際は、メモリ制限を 2 G に設定することをお勧めします。 詳しくは、 必須の PHP 設定を参照してください。
  5. セッションパスディレクトリのコメントを解除し、パスを設定します。

    code language-conf
    session.save_path = "/var/lib/php/session"
    
  6. 保存して、エディターを終了します。

  7. エディターで /etc/php-fpm.d/www.conf を開きます。

  8. 次の行に一致するようにファイルを編集します。

    code language-conf
    user = nginx
    group = nginx
    listen = /run/php-fpm/php-fpm.sock
    listen.owner = nginx
    listen.group = nginx
    listen.mode = 0660
    
  9. 環境の行をコメント解除します。

    code language-conf
    env[HOSTNAME] = $HOSTNAME
    env[PATH] = /usr/local/bin:/usr/bin:/bin
    env[TMP] = /tmp
    env[TMPDIR] = /tmp
    env[TEMP] = /tmp
    
  10. 保存して、エディターを終了します。

  11. PHP セッションパスのディレクトリを作成し、所有者を apache のユーザーおよびグループに変更します。

    code language-bash
    mkdir -p /var/lib/php/session/
    
    code language-bash
    chown -R apache:apache /var/lib/php/
    
  12. PHP セッションパスのディレクトリを作成し、所有者を apache のユーザーおよびグループに変更します。

    code language-bash
    mkdir -p /run/php-fpm/
    
    code language-bash
    chown -R apache:apache /run/php-fpm/
    
  13. php-fpm サービスを開始し、起動時に開始するように設定します。

    code language-bash
    systemctl start php-fpm
    
    code language-bash
    systemctl enable php-fpm
    
  14. php-fpm サービスが実行されていることを確認します。

    code language-bash
    netstat -pl | grep php-fpm.sock
    

MySQL のインストールと設定

詳細は、MySQL を参照してください。

インストールと設定

Adobe Commerceをダウンロードするには、次のようないくつかの方法があります。

この例は、コマンドラインを使用した Composer ベースのインストールを示しています。

  1. ファイルシステムの所有者として、アプリケーションサーバーにログインします。

  2. Web サーバーの docroot ディレクトリまたは仮想ホストの docroot として設定したディレクトリに移動します。 この例では、Ubuntu のデフォルト /var/www/html を使用しています。

    code language-bash
    cd /var/www/html
    
  3. Composer をグローバルにインストール Adobe Commerceをインストールする前に、依存関係を更新するために Composer が必要です。

    code language-bash
    curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
    
  4. Adobe Commerce メタパッケージを使用して Composer プロジェクトを作成します。

    Magento Open Source

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-community-edition <install-directory-name>
    

    Adobe Commerce

    code language-bash
    composer create-project --repository=https://repo.magento.com/ magento/project-enterprise-edition <install-directory-name>
    

    プロンプトが表示されたら、 認証キーを入力します。 公開鍵 はユーザー名で、秘密鍵 はパスワードです。

  5. アプリケーションをインストールする前に、Web サーバーグループの読み取り/書き込み権限を設定します。 これは、コマンドラインがファイルをファイルシステムに書き込めるようにするために必要です。

    code language-bash
    cd /var/www/html/<magento install directory>
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
    
    code language-bash
    find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
    
    code language-bash
    chown -R :www-data . # Ubuntu
    
    code language-bash
    chmod u+x bin/magento
    
  6. コマンドラインからをインストールします。 この例では、インストールディレクトリの名前が magento2ee で、db-host が同じマシン(localhost)上にあり、db-namedb-userdb-password がすべて magento であることを前提としています。

    code language-bash
    bin/magento setup:install \
    --base-url=http://localhost/magento2ee \
    --db-host=localhost \
    --db-name=magento \
    --db-user=magento \
    --db-password=magento \
    --backend-frontname=admin \
    --admin-firstname=admin \
    --admin-lastname=admin \
    --admin-email=admin@admin.com \
    --admin-user=admin \
    --admin-password=admin123 \
    --language=en_US \
    --currency=USD \
    --timezone=America/Chicago \
    --use-rewrites=1
    
  7. 開発者モードに切り替えます。

    code language-bash
    cd /var/www/html/magento2/bin
    
    code language-bash
    ./magento deploy:mode:set developer
    

Nginx の設定

インストール ディレクトリおよび nginx 仮想ホストに用意されている nginx.conf.sample 設定ファイルを使用して、nginx を設定することをお勧めします。

これらの手順は、nginx 仮想ホストの CentOS のデフォルトの場所(例:/etc/nginx/conf.d)とデフォルトの docroot (例:/usr/share/nginx/html)を使用していることを前提としています。ただし、これらの場所は、環境に合わせて変更できます。

  1. サイトの新しい仮想ホストを作成します。

    code language-bash
    vim /etc/nginx/conf.d/magento.conf
    
  2. 次の設定を追加します。

    code language-conf
    upstream fastcgi_backend {
      server  unix:/run/php-fpm/php-fpm.sock;
    }
    
    server {
    
      listen 80;
      server_name www.magento-dev.com;
      set $MAGE_ROOT /usr/share/nginx/html/magento2;
      include /usr/share/nginx/html/magento2/nginx.conf.sample;
    }
    
    note note
    NOTE
    include ディレクティブは、インストールディレクトリ内のサンプル nginx 設定ファイルを指している必要があります。
  3. www.magento-dev.com を自分のドメイン名に置き換えます。

  4. 保存して、エディターを終了します。

  5. 構文が正しいことを確認します。

    code language-bash
    nginx -t
    
  6. nginx を再起動します。

    code language-bash
    systemctl restart nginx
    

SELinux と Firewalld の設定

CentOS 7 では、SELinux がデフォルトで有効になっています。 次のコマンドを使用して、実行中かどうかを確認します。

sestatus

SELinux と firewalld を設定するには:

  1. SELinux 管理ツールをインストールします。

    code language-bash
    yum -y install policycoreutils-python
    
  2. 次のコマンドを実行して、インストールディレクトリのセキュリティコンテキストを変更します。

    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/app/etc(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/var(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/media(/.*)?'
    
    code language-bash
    semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/nginx/html/magento2/pub/static(/.*)?'
    
    code language-bash
    restorecon -Rv '/usr/share/nginx/html/magento2/'
    
  3. firewalld パッケージのインストール:

    code language-bash
    yum -y install firewalld
    
  4. ファイアウォールサービスを起動し、起動時に起動するように設定します。

    code language-bash
    systemctl start firewalld
    
    code language-bash
    systemctl enable firewalld
    
  5. 次のコマンドを実行して HTTP および HTTPS のポートを開くと、web ブラウザーからベース URL にアクセスできます。

    code language-bash
    firewall-cmd --permanent --add-service=http
    
    code language-bash
    firewall-cmd --permanent --add-service=https
    
    code language-bash
    firewall-cmd --reload
    

インストールの確認

Web ブラウザーを開き、サイトのベース URL に移動して インストールを確認します。

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995