Comment installer Magento 2 with Varnish, Apache and Pound as SSL Termination

Dans cet article, Nous vous montrerons comment installer Magento 2 sur un Ubuntu 16.04 VPS avec MariaDB, Le vernis comme un cache de page entière, Apache and Pound as SSL termination. Ce guide devrait fonctionner sur autre Linux VPS systems as well but was tested and written for an Ubuntu 16.04 VPS.

Avant de commencer, you may want a different setup for your Magento. Vous pouvez suivre ce tutoriel to install Magento 2 sur une Ubuntu 16.04 VPS avec MariaDB, PHP-FPM 7.0, Le vernis comme un cache de page entière, Nginx comme terminaison SSL et Redis pour stockage de session et la mise en cache de page.

Or you can check out ce tutoriel to install Magento 2 sur un Ubuntu 16.04 VPS avec MariaDB, Le vernis comme un cache de page entière, Apache et Memcache pour stockage de session.

If you have any different requirements, juste get a Linux VPS from us and we’ll set everything up for you, sans frais.

1. Login and update your server

Tout d'abord, you need to login to your Ubuntu 16.04 VPS via SSH tant qu’utilisateur root :

ssh [email protégée]_IP_address

It is also recommended to start a screen session by executing the following command

screen -U -S magento

Mise à jour du système and install necessary packages with:

apt-get update && apt-get -y upgrade
apt-get -y install curl nano git

It is crucial that you always keep your server up to date. You can even activez les mises à jour automatiques in order to achieve this.

2. Installer et configurer MariaDB

Installer le dernier MariaDB 10.0 serveur depuis les dépôts officiels d’Ubuntu :

apt-get install -y mariadb-serveur

Prochaine, Nous devons créer une base de données pour notre installation de Magento.

mysql -u root -p
MariaDB [(aucun)]> CREATE DATABASE magento;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON magento.* TO 'magento'@'localhost' IDENTIFIED BY 'strong_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> q

Do not forget to replace ‘strong_password’ with an actual strong password. You can even generate a strong password from the command line.

3. Installer le serveur web Apache2

apt-get install apache2

4. Installer PHP et modules PHP requis

Pour installer la dernière version stable de PHP version 7 et tous les modules nécessaires, exécuter :

apt-get install php7.0 libapache2-mod-php7.0 php7.0-mbstring php7.0-curl php7.0-zip php7.0-gd php7.0-mysql php7.0-mcrypt php7.0-xsl php-imagick php7.0-gd php7.0-cli php-pear php7.0-intl

Modifier quelques paramètres de PHP par défaut :

sed -i "s/memory_limit = .*/memory_limit = 256M/" /etc/php/7.0/cli/php.ini
sed -i "s/upload_max_filesize = .*/upload_max_filesize = 128M/" /etc/php/7.0/cli/php.ini
sed -i "s/zlib.output_compression = .*/zlib.output_compression = on/" /etc/php/7.0/cli/php.ini
sed -i "s/max_execution_time = .*/max_execution_time = 18000/" /etc/php/7.0/cli/php.ini

Enable the Apache2 rewrite module if it is not already done:

a2enmod rewrite

Afin d’activer la nouvelle configuration, Redémarrez le serveur web Apache à l’aide de la commande suivante :

redémarrage du service apache2

5. Installer le compositeur

Compositeur est un gestionnaire de dépendance pour PHP avec lequel vous pouvez installer des paquets. Compositeur va tirer dans toutes les bibliothèques requises et dépendances dont vous avez besoin pour votre projet.

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

6. Installer Magento 2 de Github

Cloner le référentiel Magento à la ~/myMagentoSite.com Répertoire à l’aide de la commande suivante :

git clone https://github.com/magento/magento2.git /var/www/myMagentoSite.com

Get the latest Magento 2 stable release:

CD /var/ www/myMagentoSite.com
git checkout $(décrire les git--tags $(git rev-list--tags--max-count = 1))

Exécutez le compositeur pour installer toutes les dépendances de Magento :

installation de compositeur

Pour continuer avec l’installation, vous pouvez soit utiliser l’Assistant d’installation ou de la ligne de commande, dans ce guide, nous allons utiliser cette seconde.

bin/magento setup:install 
--base-url=http://myMagentoSite.com/ 
--db-host=localhost 
--db-name=magento 
--db-user=magento 
--db-password=strong_password 
--admin-firstname=First  
--admin-lastname=Last 
[email protégée] 
--admin-user=admin 
--admin-password=strong_password123 
--language=en_US 
--currency=USD 
--timezone=America/Chicago 
--use-rewrites=1

Si l’installation est réussie, vous verrez quelque chose comme ci-dessous :

[Succès] : Magento installation complète.
[SUCCESS]: Magento Admin URI: /admin_1m0ezr

Exécutez le crontab commande pour créer une tâche cron

crontab -u www-data - e

et ajoutez la ligne suivante :

* * * * * /usr/bin/php /var/www/myMagentoSite.com/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/myMagentoSite.com/var/log/magento.cron.log

Enfin, Définissez les autorisations correctes :

chown -R www-data: /var/www/myMagentoSite.com

7. Configurer Apache

Créer une nouvelle directive VirtualHost Apache. Par exemple, you can create a new Apache configuration file named ‘magento.conf’ on your server:

touch /etc/apache2/sites-available/magento.conf
ln -s /etc/apache2/sites-available/magento.conf /etc/apache2/sites-enabled/magento.conf
nano /etc/apache2/sites-available/magento.conf

Puis, Ajoutez les lignes suivantes :

<VirtualHost *: 80>
ServerAdmin [email protégée]
DocumentRoot /var/www/myMagentoSite.com/
ServerName myMagentoSite.com
ServerAlias www.myMagentoSite.com
<Directory /var/www/myMagentoSite.com/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Annuaire>
ErrorLog /var/log/apache2/myMagentoSite.com-error_log
CustomLog /var/log/apache2/myMagentoSite.com-access_log common
</VirtualHost>

Redémarrez le serveur web Apache pour que les modifications soient prises en compte :

redémarrage du service apache2

Vous devriez maintenant être capable de se connecter à votre backend Magento en allant à http://myMagentoSite.com/admin_1m0ezr en utilisant les informations que vous définissez lorsque vous exécutez le bin/magento setup:install.

8. Installer et configurer le vernis

To install Varnish, Il suffit de lancer la commande suivante :

apt-get install vernis

De votre tableau de bord Magento Admin, cliquez sur le lien de magasins (encadré à gauche)-> Configuration-> AVANCÉ-> Système-> Cache de Page entière

Uncheck “Use system value” and from the Caching Application list, Sélectionnez Cache vernis (recommandé), enregistrer la configuration, Cliquez sur le lien Configuration de vernis et cliquez sur l’Export VCL pour vernis 4 bouton. Le varnish.vcl fichier que nous utiliserons est exporté dans la /var/www/myMagentoSite.com/var/ Annuaire.

Vider le cache de Magento avec :

php bin/magento cache:flush

Supprimer le /etc/varnish/default.vcl et un lien symbolique pour la configuration exportée vernis.

rm -f /etc/varnish/default.vcl
ln -sf /var/www/myMagentoSite.com/var/varnish.vcl /etc/varnish/default.vcl

Pour modifier le port de vernis de 6081 À 80, Nous devons modifier la configuration du service systemd.

Créer un nouveau customexec.conf fichier

mkdir -p /etc/systemd/system/varnish.service.d
nano /etc/systemd/system/varnish.service.d/customexec.conf

collez le texte suivant :

[Service]
ExecStart=
ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m

et recharger systemd unités

systemctl démon-reload

Now we need to change Apache listening port from 80 À 8080. Pour le faire, open the Apache ports configuration file and change it as follows:

nano /etc/apache2/ports.conf

Listen 80 -> Ecoute 8080
nano /etc/apache2/sites-available/magento.conf

<VirtualHost *: 80> -> <VirtualHost *: 8080>

If everything is setup correctly now you should be able to login to your Magento back-end by going to https://myMagentoSite.com/admin_1m0ezr.

Coincé quelque part ? Obtenir un VPS de nous et nous ferons tout cela pour vous, gratuitement !

9. Install and configure Pound as SSL termination

Varnish doesn’t support SSL traffic, so you will need to install a proxy or load balancer like Pound to handle the SSL traffic. Pour ce faire, we will configure Pound to only listen on port 443 and pass the traffic to Varnish on port 80.

Première, let’s install Pound with:

apt-get install pound

Open the Pound configuration file:

nano /etc/pound/pound.cfg

et définissez les paramètres suivants :

ListenHTTPS
    Address 1.2.3.4 ## this should be your server public IP address
    Port 443
    Cert "/etc/apache2/ssl/myMagentoSite.com.pem" ## path to your SSL certificate
    HeadRemove "X-Forwarded-Proto"
    AddHeader "X-Forwarded-Proto: https"
    Service
        BackEnd
            Address 127.0.0.1
            Port 80
        End
    End
End

After you are done, restart your Apache and Varnish, and Pound:

service apache2 restart
service varnish restart
service pound restart

10. Optimisations supplémentaires

To further optimize your Magento installation from your Magento admin dashboard:

1. Aller aux magasins-> Configuration-> CATALOGUE-> Catalogue-> Catégorie d’utilisation catalogue plat, Sélectionnez Oui, puis cliquez sur Save Config.
2. Aller aux magasins-> Configuration-> AVANCÉ-> Développeur-> Les paramètres JavaScript et réglez fusionner des fichiers JavaScript et rapetisser les fichiers JavaScript sur Oui, puis cliquez sur Save Config..
3. Aller aux magasins-> Configuration-> AVANCÉ-> Développeur-> Les paramètres CSS et réglez fusionner les fichiers CSS et rapetisser les fichiers CSS sur Oui, puis cliquez sur Save Config.
4. Pensez à utiliser un CDN, Content Delivery Network

Do not forget to flush the cache again:

php bin/magento cache:flush

You can also follow our guide on how to speed up Magento.

Voilà. Vous avez correctement installé Magento 2 with Memcache as a session storage and page caching, Varnish as a full page caching and Apache on your Ubuntu 16.04 VPS and you have set up Pound as SSL termination. Pour plus d’informations sur la façon de gérer votre installation de Magento, Veuillez vous référer à l’officiel Magento documentation.

Source

Laisser une réponse