Question

Configure Varnish with Apache on Ubuntu 14.04

Posted November 13, 2014 34.4k views

Hi

How can i install and configure Varnish to work whit Apache on Ubuntu 14.04?

1 comment
  • I followed these instructions and my site is being served however I’m not seeing any varnish headers. Am I missing a step?

    Thanx

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
4 answers

Configuring Varnish to work with Apache on Ubuntu 14.04 is largely similar to this article covering 12.04.

I just ran through a basic set up on 14.04. The first step is to install Apache and Varnish:

sudo apt-get install varnish apache2

Then we need to configure Varnish to listen on port 80. Edit the file /etc/default/varnish Find the section begin with “Alternative 2, Configuration with VCL” Make sure it’s uncommented and update the port:

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

Next we need to adjust Apache to listen on port 8080. Edit /etc/apache2/ports.conf and change Listen 80 to Listen 8080 Then edit /etc/apache2/sites-enabled/000-default.conf and change <VirtualHost *:80> to <VirtualHost *:8080>

Finally, restart Varnish and Apache with:

sudo service apache2 restart
sudo service varnish restart

Varnish is now sitting in front of Apache and serving cached content.

@emshidiq I run multiple sites under one VPS and would like to know the answer too. Thanks for asking.

For Varnish to work on Ubuntu 15.04.

First grep:
“`sudo grep -R ‘ExecStart=/usr/sbin/varnishd’ /etc/


If result is "/etc/systemd/system/multi-user.target.wants/varnish.service"
```sudo nano /etc/systemd/system/multi-user.target.wants/varnish.service

Change the ExecStart to this only.
”`ExecStart=/usr/sbin/varnishd -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m


Save and exit, restart Varnish. 
```systemctl daemon-reload
systemctl restart varnish.service

I’m using ubuntu 16 , and having link problems:

http://example.com/test is redirecting to http://example.com:8080/test and returning error :|

Submit an Answer