[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

Apache

Adobe Commerceは Apache 2.4.x をサポートしています。

Apache 必須ディレクティブ

  1. URL の問題を引き起こす可能性のあるエンコードされたスラッシュのデコードを回避するために、サーバー設定(グローバル)または仮想ホスト設定で AllowEncodedSlashes を設定します。 例えば、API を使用して SKU にスラッシュが含まれる製品を取得する場合は、スラッシュを変換しないでください。 サンプルブロックが完全ではなく、他のディレクティブが必要な場合。

    code language-conf
    <VirtualHost *:443>
      # Allow encoded slashes
      AllowEncodedSlashes NoDecode
    </VirtualHost>
    

Apache の書き換えとアクセス

このトピックでは、Apache 2.4 の書き換えを有効にする方法と、​ 分散設定ファイル .htaccess の設定を指定する方法について説明します。

Adobe Commerceは、サーバーの書き換えと .htaccess き換えを使用して、Apache にディレクトリレベルの手順を提供します。 次の手順は、このトピックの他のすべての節にも含まれています。

このセクションを使用して、Apache 2.4 の書き換えを有効にし、​ 分散設定ファイル、.htaccess の設定を指定します

Adobe Commerceは、サーバーの書き換えと .htaccess き換えを使用して、Apache にディレクトリレベルの手順を提供します。

NOTE
これらの設定を有効にしないと、通常、ストアフロントや管理者にスタイルが表示されません。
  1. Apache 書き換えモジュールを有効にします。

    code language-bash
    a2enmod rewrite
    
  2. アプリケーションで分散 .htaccess 設定ファイルを使用できるようにするには、Apache 2.4 ドキュメント ​ のガイドラインを参照してください。

    note tip
    TIP
    Apache 2.4 では、サーバーのデフォルトのサイト設定ファイルは /etc/apache2/sites-available/000-default.conf です。

    例えば、次のコードを 000-default.conf の末尾に追加できます。

    code language-none
    <Directory "/var/www/html">
        AllowOverride All
    </Directory>
    
    note note
    NOTE
    追加のパラメーターが必要になる場合があります。 詳しくは、Apache 2.4 ドキュメント ​ を参照してください。
  3. Apache 設定を変更した場合は、Apache を再起動します。

    code language-bash
    service apache2 restart
    
    note note
    NOTE
    • 以前の Apache バージョンからアップグレードした場合は、まず <Directory "/var/www/html"><Directory "/var/www"> または 000-default.conf を探します。
    • Adobe Commerce ソフトウェアをインストールするディレクトリのディレクティブで AllowOverride の値を変更する必要があります。 例えば、web サーバーの docroot にをインストールするには、<Directory /var/www> でディレクティブを編集します。
NOTE
これらの設定を有効にしないと、通常、ストアフロントや管理者にスタイルが表示されません。

Apache 必須モジュール

Adobe Commerceでは、次の Apache モジュールをインストールする必要があります。

Apache のバージョンを確認する

現在実行中の Apache のバージョンを確認するには、次のように入力します。

apache2 -v

結果は次のように表示されます。

Server version: Apache/2.4.04 (Ubuntu)
Server built: Jul 22 2020 14:35:32

Ubuntu での Apache のインストールまたはアップグレード

次の節では、Apache のインストールまたはアップグレード方法について説明します。

  • Apache のインストール
  • Ubuntu 上の Apache 2.4 にアップグレードして、PHP 7.4 を使用します。

Ubuntu への Apache のインストール

デフォルトバージョンの Apache をインストールするには:

  1. Apache のインストール

    code language-bash
    apt-get -y install apache2
    
  2. インストールを確認します。

    code language-bash
    apache2 -v
    

    結果は次のように表示されます。

    code language-none
    Server version: Apache/2.4.18 (Ubuntu)
    Server built: 2020-04-15T18:00:57
    
  3. rewrites and .htaccess を有効にします。

Ubuntu 上の Apache のアップグレード

Apache 2.4 にアップグレードするには:

  1. Apache 2.4 が含まれている ppa:ondrej リポジトリを追加します。

    code language-bash
    apt-get -y update
    
    code language-bash
    apt-add-repository ppa:ondrej/apache2
    
    code language-bash
    apt-get -y update
    
  2. Apache 2.4 をインストールします。

    code language-bash
    apt-get install -y apache2
    
    note note
    NOTE
    依存関係が満たされていないために「apt-get install」コマンドが失敗した場合は、https://askubuntu.com/ などのリソースを参照してください。
  3. インストールを確認します。

    code language-bash
    apache2 -v
    

    次のようなメッセージが表示されます。

    code language-none
    Server version: Apache/2.4.10 (Ubuntu)
    Server built: Jul 22 2020 22:46:25
    
  4. rewrites and .htaccess を有効にします。

CentOS への Apache のインストール

Adobe Commerceを使用するには、Apache サーバーの書き換えが必要です。 また、.htaccess で使用できるディレクティブのタイプも指定する必要があります。アプリケーションでは、このタイプを使用して書き換えルールを指定します。

Apache のインストールと設定は、基本的に、ソフトウェアのインストール、書き換えの有効化、.htaccess ディレクティブの指定の 3 つの手順で行います。

Apache のインストール

  1. Apache 2.4 をまだインストールしていない場合は、インストールします。

    code language-bash
    yum -y install httpd
    
  2. インストールを確認します。

    code language-bash
    httpd -v
    

    次のようなメッセージが表示され、インストールが成功したことを確認します。

    code language-none
    Server version: Apache/2.4.40 (Unix)
    Server built: Oct 16 2020 14:48:21
    
  3. 次の節に進みます。

    note note
    NOTE
    CentOS で Apache 2.4 がデフォルトで提供されている場合でも、設定するには次の節を参照してください。

CentOS の書き換えと.htaccess の有効化

  1. ファイル /etc/httpd/conf/httpd.conf 開いて編集します。

    code language-bash
    vim /etc/httpd/conf/httpd.conf`
    
  2. 次で始まるブロックを見つけます。

    code language-conf
    <Directory "/var/www/html">
    
  3. AllowOverride の値を All に変更します。

    以下に例を挙げます。

    code language-conf
    <Directory "/var/www/">
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      Allow from all
    </Directory>
    
    note note
    NOTE
    上記の Order の値は、すべての場合で機能するとは限りません。 詳しくは、Apache ドキュメント(2.4)を参照してください。
  4. ファイルを保存し、テキストエディターを終了します。

  5. Apache 設定を適用するには、Apache を再起動します。

    code language-bash
    service apache2 restart
    
NOTE
これらの設定を有効にしないと、通常、ストアフロントや管理者にスタイルが表示されません。

Ubuntu の書き換えと.htaccess を有効にする

  1. ファイル /etc/apache2/sites-available/default 開いて編集します。

    code language-bash
    vim /etc/apache2/sites-available/default
    
  2. 次で始まるブロックを見つけます。

    <Directory "/var/www/html">

  3. AllowOverride の値を All に変更します。

    例:

    code language-conf
    <Directory "/var/www/html">
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      Allow from all
    </Directory>
    
  4. ファイルを保存し、テキストエディターを終了します。

  5. mod_rewrite モジュールを使用するように Apache を設定します。

    code language-bash
    cd /etc/apache2/mods-enabled
    
    code language-bash
    ln -s ../mods-available/rewrite.load
    
  6. Apache を再起動して、変更を適用します。

    code language-bash
    service apache2 restart
    

403 (禁止)エラーの解決

サイトへのアクセス中に 403 Forbidden エラーが発生した場合は、Apache 設定または仮想ホスト設定を更新して、サイトへの訪問者を有効にできます。

Apache 2.4 の 403 Forbidden エラーの解決

Web サイトの訪問者がサイトにアクセスできるようにするには、Require ディレクティブ ​ のいずれかを使用します。

例:

<Directory "/var/www/">
  Options Indexes FollowSymLinks MultiViews
  AllowOverride All
  Order allow,deny
  Require all granted
</Directory>
NOTE
上記の Order の値は、すべての場合で機能するとは限りません。 詳しくは、Apache ドキュメント ​ を参照してください。
recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995