Nginx Reverse Proxy Kurulumu cPanel

Bildiğiniz üzere cPanel şuan nginx‘i web server olarak kullanmamıza müsade etmiyor. Ancak nginx‘in o muazzam performansını en azından statik içeriğe yanıt verebilecek şekilde cPanel‘e kurabiliriz. Böylece 80 portuna gelen isteklerin hepsini nginx karşılayıp php’e ihtiyaç duyduğunda apache ye iletip sonucu yanıt olarak verecektir.

İşin ucunda yine Apache olacağından dolayı performansta çok büyük artışlar beklemek ve bu performansa göre nginx‘i değerlendirmek doğru olmaz. 🙂 Yinede gözle görülür bir fark oluyor diyebiliriz, apache de doğru konfigüre edildiğinde uzun süre sizi idare edecektir.

Kurulumu yapabilmek için öncelikle cPanel kurulu olan sunucuya “root” olarak giriş yapmanız gerekiyor. Herhangi bir SSH Client ile sunucunuza “root” olarak login olduktan sonra;

Aşağıdaki komut ile /usr/local/src dizinine gidiyoruz.

cd /usr/local/src

Daha sonra wget ile son sürüm “nginx admin” plugin’ini indiriyoruz.

wget http://nginxcp.com/latest/nginxadmin.tar

İndirdiğimiz sıkıştırılmış dosyayı dışarı çıkarıyoruz

tar xf nginxadmin.tar

Çıkarılan klasöre geçiyoruz;

cd publicnginx

Ve kurulumu başlatıyoruz.

./nginxinstaller install

Kurulum tamamlandıktan sonra aşağıdaki komut ile apache yi yeniden başlatıyoruz.

/etc/init.d/httpd restart

Buraya kadar herhangi bir sorunla karşılaşmadıysanız artık nginx reverse proxy başarılı bir şekilde çalışıyor demektir hemen sayfanızın performansını v.b kontrol edebilirsiniz.

Eğer

./nginxinstaller install

bölümünde access key doesn’t exist gibi bir uyarı alıyorsanız yapmanız gereken WHM/cPanel arayüzüne giriş yapıp go to WHM > Cluster/Remote Access > Setup Remote Access Key kısmından yeni bir key oluşturmanız yeterlidir. Sonrasında komutu yeniden başlatabilirsiniz.

Sitenizde log dosyalarından yazılan IP adreslerinden istatistik çıkartıyorsanız ya da bu kayıtları farklı yerlerde kullanıyorsanız nginx reverse proxy kurduğunuzda source IP her zaman kendi IP adresiniz görünecektir. Bunun sizin için sorun olacağını düşünüyorsanız mod_rpaf modülünü apache ye kurmanız gerekecektir, bu modülü kurmakta nginx reverse proxy kurmak kadar basit hemen anlatalım;

Aşağıdaki komut ile /usr/local/src dizinine gidiyoruz.

cd /usr/local/src

Daha sonra wget ile “mod-praf” modülünü indiriyoruz.

wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz

İndirdiğimiz sıkıştırılmış dosyayı dışarı çıkarıyoruz

tar xvzf mod_rpaf-0.6.tar.gz

Çıkarılan klasöre geçiyoruz;

cd mod_rpaf-0.6

Kurulumu başlatıyoruz.

/usr/local/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

Yükleme tamamlandıktan sonra değiştirmemiz gereken çok ufak bir ayar kaldı, WHM/cPanel arayüzüne giriş yapıyoruz ve soldaki menüden Apache Configuration‘u buluyoruz. Include Editor kısmındaki Pre Main Include bölümüden sunucu üzerindeki yüklü Apache sürümünü seçiyoruz. Açılan bölüme aşağıdaki satırları alt alta yapıştırıyoruz. “RPAFproxyips” bölümündeki IP adresleri sunucunuzun IP adreslerini girmeniz gerekiyor.

LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 123.123.123.123
RPAFsethostname On
RPAFheader X-Real-IP

Son olarak;

/etc/init.d/httpd restart

Nginx’den verim alamadım kaldırmak istiyorum !
O halde size hemen bunu nasıl uninstall edeceğimizi anlatayım. Daha önce indirdiğimiz nginxadmin plugin dosyaları ile işlem uygulayacağız eğer ki dosyaları silmediyseniz sadece aşağıdaki komutu çalıştırmanız yeterlidir. Eğer ki dosyaları sildiyseniz bu makalenin en başındaki işlemleri tekrarlayın ancak install etmek yerine “uninstall” yazarak nginx’in kaldırılmasını sağlayın.

./nginxinstaller uninstall