Configure and Install Varnish on CentOS/Ubuntu.

Configure and Install Varnish on CentOS/Ubuntu.

In this tutorial we can check how to Configure and Install Varnish on CentOS/Ubuntu server.

Varnish is the most powerful open source HTTP engine/reverse HTTP proxy that has the capability to increase the site speed, especially when there is high traffic on the site. Varnish Cache visits your page only once for caching the page and all the future request for that page will be served by varnish cache

Install varnish

Before installing varnish, we need to add varnish repositories to the server.

For Ubuntu Users

# curl http://repo.varnish-cache.org/debian/GPG-key.txt | sudo apt-key add –

# apt-get update

# apt-get install varnish

For CentOS Users

# yum install -y epel-release

# yum update

# yum install -y varnish

Configuring Varnish on both Ubuntu and CentOS

After installation, we need to configure varnish to reduce the load on the server.

For Ubuntu Users

Search and uncomment the lines under “DAEMON_OPTS” on the varnish configuration file /etc/default/varnish and edit the lines similar to the following.

# vi /etc/default/varnish

DAEMON_OPTS=”-a :80 \

-T localhost:6082 \

-f /etc/varnish/default.vcl \

-S /etc/varnish/secret \

-s malloc,256m”

After saving this file open varnish default file which tells varnish to look for server content. Edit this file to tell varnish to look for the content on port 8080. The code will be similar to the below example.

# vi /etc/varnish/default.vcl

backend default {

.host = “127.0.0.1”;

.port = “8080”;

}

For CentOS users.

Edit varnish configuration file to change the varnish port.

# vi /etc/varnish/varnish.params

VARNISH_LISTEN_PORT=80

Save the file and open the default file of varnish to look the content on port 8080. The code should be similar to the following example.

# vi /etc/varnish/default.vcl

backend default {

.host = “127.0.0.1”;

.port = “8080”;

}

Configure apache to work with varnish

By default, apache is listening to port 80. We have to change the port for apache to 8080 to run it behind varnish.

For Ubuntu Users.

Edit the port.conf file to change apache port to 8080. The file should be similar to the example below.

# vi /etc/apache2/ports.conf

NameVirtualHost 127.0.0.1:8080

Listen 127.0.0.1:8080

Also, edit the apache configuration file to change the port.

# vi /etc/apache2/sites-available/default

<VirtualHost 127.0.0.1:8080>

Save this file and restart both services to enable the changes.

# service apache2 restart

# service varnish restart

 

For CentOS users

Edit apache configuration file to change the port to 8080.

# vi /etc/httpd/conf/httpd.conf

Listen 8080

Restart both services to reflect the changes.

# systemctl restart varnish

# systemctl restart httpd

After the installation, you can verify whether the vanish is working or not by using the following command.

# curl -I http://localhost

Then the output should be something similar to the following:

HTTP/1.1 200 OK

Date: Wed, 04 Nov 2015 10:21:07 GMT

Server: Apache/2.4.6 (CentOS)

Last-Modified: Fri, 02 Oct 2015 10:36:53 GMT

ETag: “6c-5211cdbf61c14”

Content-Length: 108

Content-Type: text/html; charset=UTF-8

X-Varnish: 32770

Age: 0

Via: 1.1 varnish-v4

Connection: keep-aliveHTTP/1.1 200 OK

Date: Wed, 04 Nov 2015 10:21:07 GMT

Server: Apache/2.4.6 (CentOS)

Last-Modified: Fri, 02 Oct 2015 10:36:53 GMT

ETag: “6c-5211cdbf61c14”

Content-Length: 108

Content-Type: text/html; charset=UTF-8

X-Varnish: 32770

Age: 0

Via: 1.1 varnish-v4

Connection: keep-alive

If you need any further assistance please contact our support department.

  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

About Zabbix

About Zabbix Zabbix is an open source network monitoring tool. It works with a centralized...

Apache HTTPD Web Server – Details and Installation

Apache HTTPD Web Server – Details and Installation Apache HTTPD is one of the most used web...

Configure and Install PostgreSQL on CentOS 7 and 8

Configure and Install PostgreSQL on CentOS 7 and 8 Configure and Install PostgreSQL on CentOS 7...

Create and Install Self-Signed SSL Certificate on CentOS and Ubuntu

Create and Install Self-Signed SSL Certificate on CentOS and Ubuntu SSL certificate stands for...

How to Change Hostname in RHEL / CentOS 7.0

How to Change Hostname in RHEL / CentOS 7.0 Watch the following video if you want to know how to...