Seperti telah kita ketahui bahwa apache web server menjadi lamban jika permintaan yang masuk berjumlah besar, karena apache masih menggunakan proses terpisah dalam setiap koneksinya. Salah satu untuk mengatasi hal tersebut ialah dengan menggabungkan apache dengan Reverse proxy Nginx.
Reverse proxy atau juga disebut proxy HTTP Reverse ialah salah satu cara untuk caching pada HTTP server. Selain berfungsi sebagai caching website, reverse proxy juga sebagai pengalokasian bandwith, content filtering dan sebagainya. Reverse proxy ini terdapat pada port 80. Reverse proxy ini menjadi server perantara antara client dengan web server apache.
Cara Kerja Reverse Proxy Nginx
Proxy di bagi menjadi 2 yaitu forward proxy dan reverse proxy. Forward proxy adalah proxy yang meneruskan data ke host tujuan sedangkan reverse proxy adalah sebuah proxy yang berada di depan dari web server, digunakan sebagai cache atau bisa juga sebagai load balancer. Proses pada reverse proxy ialah permintaan atau HTTP request akan masuk terlebih dahulu kedalam server proxy (reverse proxy) setelah itu akan diteruskan ke server backend (web server apache).
Reverse proxy ini tidak serta merta menggantikan fungsi web server namun hanya sebagai pernerus request ke server backend. Jadi jika permintaan (request) banyak, request akan dimasukan dulu kedalam server proxy yang selanjutnya akan dilanjutkan ke server apache untuk sederhananya seperti tugas dari receptionist.
apt-get install nginx
apt-get install apache2
Listen 8080
<IfModule ssl_module>
listen 8443
</IfModule>
<IfModule mod_gnutls.c>
Listen 8443
</IfModule>
systemctl status apache
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set _header X-Real-IP $remote_addr;
proxy_set _header X-Forwarded-for $proxy_add_x_forwarded_for;
proxy_set _header X-Forwarded-proto $scheme;
}