10

I have configured Varnish cache in the local Magento 2 environment and It is working fine.

I have added the below lines in the app/etc/env.php file.

'http_cache_hosts' => [
    [
        'host' => '127.0.0.1',
        'port' => '6082'
    ]
]

What is the real purpose of adding this configuration in Magento 2 env.php?

What do these configurations do?

How it affects Magento? Please Help me Out....

1

2 Answers 2

7

To make Magento aware of the Varnish servers, add the following section to app/etc/env.php. For Example:

'http_cache_hosts' =>
  array (
    0 =>
    array (
      'host' => 'varnish-0',
      'port' => '80',
    ),
    1 =>
    array (
      'host' => 'varnish-1',
      'port' => '80',
    ),
  ),

In order to ensure the Varnish cache can be cleared, you must also add a node to your env.php to tell Magento how to communicate with Varnish

I hope this will help

2
  • If i don't add these lines in env.php, then Varnish cache won't work as expected in Magento Right ?
    – Aji
    Nov 19, 2019 at 11:40
  • 1
    It is because If you want to flush the Varnish cache from the Magento backend, you need to add the Varnish server in your Magento config to http-cache-hosts. Nov 19, 2019 at 12:13
2

You can also put Varnish hots using bin/magento:

magento setup:config:set --http-cache-hosts=192.0.2.100,192.0.2.155:6081

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.