Nginx
Adobe Commerce prend en charge nginx 1.x (ou la dernière version de la ligne principale). Vous devez également installer la dernière version de php-fpm
.
Les instructions d’installation varient en fonction du système d’exploitation utilisé. Voir PHP pour plus d’informations.
Ubuntu
La section suivante décrit comment installer Adobe Commerce 2.x sur Ubuntu à l’aide de nginx, PHP et MySQL.
Installer nginx
sudo apt -y install nginx
Vous pouvez également créer nginx depuis la source
Après avoir terminé les sections suivantes et installé l’application, nous utiliserons un exemple de fichier de configuration pour configurer nginx.
Installation et configuration de php-fpm
Adobe Commerce nécessite plusieurs extensions PHP pour fonctionner correctement. Outre ces extensions, vous devez également installer et configurer l’extension php-fpm
si vous utilisez nginx.
Pour installer et configurer php-fpm
:
-
Installez
php-fpm
etphp-cli
:code language-bash apt-get -y install php7.2-fpm php7.2-cli
note note NOTE Cette commande installe la dernière version disponible de PHP 7.2.X. Voir Configuration requise pour les versions PHP prises en charge. -
Ouvrez les fichiers
php.ini
dans un éditeur :code language-bash vim /etc/php/7.2/fpm/php.ini
code language-bash vim /etc/php/7.2/cli/php.ini
-
Editez les deux fichiers pour qu'ils correspondent aux lignes suivantes :
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Nous vous recommandons de définir la limite de mémoire sur 2 G lors du test d’Adobe Commerce. Pour plus d’informations, voir Paramètres PHP requis . -
Enregistrez l’éditeur, puis quittez-le.
-
Redémarrez le service
php-fpm
:code language-bash systemctl restart php7.2-fpm
Installation et configuration de MySQL
Pour plus d’informations, voir MySQL .
Installation et configuration
Il existe plusieurs façons de télécharger Adobe Commerce, notamment :
Cet exemple présente une installation basée sur le compositeur à l’aide de la ligne de commande.
-
En tant que propriétaire du système de fichiers, connectez-vous à votre serveur d’applications.
-
Modifiez le répertoire docroot du serveur web ou un répertoire que vous avez configuré comme docroot d’hôte virtuel. Pour cet exemple, nous utilisons la valeur par défaut Ubuntu
/var/www/html
.code language-bash cd /var/www/html
-
Installez le compositeur globalement. Le compositeur est nécessaire pour mettre à jour les dépendances avant d’installer Adobe Commerce :
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Créez un projet de compositeur à l’aide du métapaquet Adobe Commerce.
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>
Lorsque vous y êtes invité, saisissez vos clés d'authentification. Votre clé publique est votre nom d’utilisateur ; votre clé privée est votre mot de passe.
-
Définissez les autorisations de lecture-écriture pour le groupe de serveurs web avant d’installer l’application. Cela est nécessaire afin que la ligne de commande puisse écrire des fichiers dans le système de fichiers.
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
-
Installez à partir de la ligne de commande. Cet exemple suppose que le répertoire d’installation est nommé
magento2ee
, quedb-host
se trouve sur le même ordinateur (localhost
) et que les répertoiresdb-name
,db-user
etdb-password
sont tousmagento
: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
-
Passez en mode Développeur :
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Configuration de nginx
Nous vous recommandons de configurer nginx à l’aide du fichier de configuration nginx.conf.sample
fourni dans le répertoire d’installation et de l’hôte virtuel nginx.
Ces instructions supposent que vous utilisez l’emplacement par défaut Ubuntu pour l’hôte virtuel nginx (par exemple, /etc/nginx/sites-available
) et le docroot par défaut Ubuntu (par exemple, /var/www/html
). Cependant, vous pouvez modifier ces emplacements en fonction de votre environnement.
-
Créez un hôte virtuel pour votre site :
code language-bash vim /etc/nginx/sites-available/magento
-
Ajoutez la configuration suivante :
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 La directive include
doit pointer vers l’exemple de fichier de configuration nginx dans votre répertoire d’installation. -
Remplacez
www.magento-dev.com
par votre nom de domaine. Il doit correspondre à l’URL de base que vous avez spécifiée lors de l’installation d’Adobe Commerce. -
Enregistrez l’éditeur, puis quittez-le.
-
Activez l’hôte virtuel que vous venez de créer en créant un lien symbolique dans le répertoire
/etc/nginx/sites-enabled
:code language-bash ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled
-
Vérifiez que la syntaxe est correcte :
code language-bash nginx -t
-
Redémarrez le nginx :
code language-bash systemctl restart nginx
Vérification de l’installation
Ouvrez un navigateur web et accédez à l’URL de base de votre site pour vérifier l’installation.
CentOS 7
La section suivante décrit comment installer Adobe Commerce 2.x sur CentOS 7 à l’aide de nginx, PHP et MySQL.
Installer nginx
yum -y install epel-release
yum -y install nginx
Une fois l’installation terminée, démarrez nginx et configurez-le pour qu’il démarre au moment du démarrage :
systemctl start nginx
systemctl enable nginx
Après avoir terminé les sections suivantes et installé l’application, nous utiliserons un exemple de fichier de configuration pour configurer nginx.
Installation et configuration de php-fpm
Adobe Commerce a besoin de plusieurs extensions PHP pour fonctionner correctement. Outre ces extensions, vous devez également installer et configurer l’extension php-fpm
si vous utilisez nginx.
-
Installer
php-fpm
:code language-bash yum -y install php70w-fpm
-
Ouvrez le fichier
/etc/php.ini
dans un éditeur. -
Supprimez le commentaire de la ligne
cgi.fix_pathinfo
et remplacez la valeur par0
. -
Editez le fichier pour qu'il corresponde aux lignes suivantes :
code language-conf memory_limit = 2G max_execution_time = 1800 zlib.output_compression = On
note note NOTE Nous vous recommandons de définir la limite de mémoire sur 2 G lors du test d’Adobe Commerce. Pour plus d’informations, voir Paramètres PHP requis . -
Annulez la mise en commentaire du répertoire du chemin de session et définissez le chemin d’accès :
code language-conf session.save_path = "/var/lib/php/session"
-
Enregistrez l’éditeur, puis quittez-le.
-
Ouvrez
/etc/php-fpm.d/www.conf
dans un éditeur. -
Editez le fichier pour qu'il corresponde aux lignes suivantes :
code language-conf user = nginx group = nginx listen = /run/php-fpm/php-fpm.sock listen.owner = nginx listen.group = nginx listen.mode = 0660
-
Ne commentez pas les lignes de l’environnement :
code language-conf env[HOSTNAME] = $HOSTNAME env[PATH] = /usr/local/bin:/usr/bin:/bin env[TMP] = /tmp env[TMPDIR] = /tmp env[TEMP] = /tmp
-
Enregistrez l’éditeur, puis quittez-le.
-
Créez un répertoire pour le chemin de session PHP et remplacez le propriétaire par l’utilisateur et le groupe
apache
:code language-bash mkdir -p /var/lib/php/session/
code language-bash chown -R apache:apache /var/lib/php/
-
Créez un répertoire pour le chemin de session PHP et remplacez le propriétaire par l’utilisateur et le groupe
apache
:code language-bash mkdir -p /run/php-fpm/
code language-bash chown -R apache:apache /run/php-fpm/
-
Démarrez le service
php-fpm
et configurez-le pour qu’il démarre au moment du démarrage :code language-bash systemctl start php-fpm
code language-bash systemctl enable php-fpm
-
Vérifiez que le service
php-fpm
est en cours d’exécution :code language-bash netstat -pl | grep php-fpm.sock
Installation et configuration de MySQL
Pour plus d’informations, voir MySQL .
Installation et configuration
Il existe plusieurs façons de télécharger Adobe Commerce, notamment :
Cet exemple présente une installation basée sur le compositeur à l’aide de la ligne de commande.
-
En tant que propriétaire du système de fichiers, connectez-vous à votre serveur d’applications.
-
Modifiez le répertoire docroot du serveur web ou un répertoire que vous avez configuré comme docroot d’hôte virtuel. Pour cet exemple, nous utilisons la valeur par défaut Ubuntu
/var/www/html
.code language-bash cd /var/www/html
-
Installez le compositeur globalement. Le compositeur est nécessaire pour mettre à jour les dépendances avant d’installer Adobe Commerce :
code language-bash curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/bin --filename=composer
-
Créez un projet de compositeur à l’aide du métapaquet Adobe Commerce.
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>
Lorsque vous y êtes invité, saisissez vos clés d'authentification. Votre clé publique est votre nom d’utilisateur ; votre clé privée est votre mot de passe.
-
Définissez les autorisations de lecture-écriture pour le groupe de serveurs web avant d’installer l’application. Cela est nécessaire afin que la ligne de commande puisse écrire des fichiers dans le système de fichiers.
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
-
Installez à partir de la ligne de commande. Cet exemple suppose que le répertoire d’installation est nommé
magento2ee
, quedb-host
se trouve sur le même ordinateur (localhost
) et que les répertoiresdb-name
,db-user
etdb-password
sont tousmagento
: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
-
Passez en mode Développeur :
code language-bash cd /var/www/html/magento2/bin
code language-bash ./magento deploy:mode:set developer
Configuration de nginx
Nous vous recommandons de configurer nginx à l’aide du fichier de configuration nginx.conf.sample
fourni dans le répertoire d’installation et de l’hôte virtuel nginx.
Ces instructions supposent que vous utilisez l’emplacement par défaut de CentOS pour l’hôte virtuel nginx (par exemple, /etc/nginx/conf.d
) et le docroot par défaut (par exemple, /usr/share/nginx/html
). Cependant, vous pouvez modifier ces emplacements en fonction de votre environnement.
-
Créez un hôte virtuel pour votre site :
code language-bash vim /etc/nginx/conf.d/magento.conf
-
Ajoutez la configuration suivante :
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 La directive include
doit pointer vers l’exemple de fichier de configuration nginx dans votre répertoire d’installation. -
Remplacez
www.magento-dev.com
par votre nom de domaine. -
Enregistrez l’éditeur, puis quittez-le.
-
Vérifiez que la syntaxe est correcte :
code language-bash nginx -t
-
Redémarrez le nginx :
code language-bash systemctl restart nginx
Configuration de SELinux et de Firewall
SELinux est activé par défaut sur CentOS 7. Utilisez la commande suivante pour voir si elle est en cours d’exécution :
sestatus
Pour configurer SELinux et firewall :
-
Installez les outils de gestion SELinux :
code language-bash yum -y install policycoreutils-python
-
Exécutez les commandes suivantes pour modifier le contexte de sécurité du répertoire d’installation :
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/'
-
Installez le package firewall :
code language-bash yum -y install firewalld
-
Démarrez le service de pare-feu et configurez-le pour qu’il démarre au moment du démarrage :
code language-bash systemctl start firewalld
code language-bash systemctl enable firewalld
-
Exécutez les commandes suivantes pour ouvrir les ports pour HTTP et HTTPS afin d’accéder à l’URL de base à partir d’un navigateur web :
code language-bash firewall-cmd --permanent --add-service=http
code language-bash firewall-cmd --permanent --add-service=https
code language-bash firewall-cmd --reload
Vérification de l’installation
Ouvrez un navigateur web et accédez à l’URL de base de votre site pour vérifier l’installation.