Kategoriler
Centos hakkında Linux Web sunuculari Plesk

Centos Sunucuya Plesk Kurulumu (Otomatik)

Sunucunuz yeni kurulmus ve panel ihtiyaciniz varsa plesk onerebilecegim panel yazilimlarindan birisidir. Ozellikle son versiyonu ile gercekten cok iyi is cikarmis parallels firmasi. Ozellikle aplikasyon kisminda, bir cok seyi zorlanmadan, tek tik ile kurabiliyorsunuz sunucunuza. Cpanel ayarinda, fazla test etmedim ama gayet basarili gorunuyor, eski versiyonlarina gore.

Suanda biz plesk’in son versiyonunu otomatik olarak kuracagiz, bu son versiyon belli bir sure siniri veriyor, 15 gun ucretsiz kullanabiliyorsunuz, sonrasinda ucret odemeniz gerekli. Anlayacaginiz cpanel gibi bu panel yazilimida ucretli olarak kullanima sunulacak.

Ssh (putty) programinizi acin ve sunucunuza baglanin, ardindan asagidaki kodlardan birini calistirin, ilkini oneririm (denedim calisiyor):

      wget -O - http://autoinstall.plesk.com/one-click-installer | sh
      curl http://autoinstall.plesk.com/one-click-installer | sh
      fetch -o - http://autoinstall.plesk.com/one-click-installer | sh

Sonrasinda arkaniza yaslanin ve 30 dakikaya kadar bekleyin, belki daha erkende bitebilir kurulum. Asagidaki gibi bir ekranla karsilasacaksiniz:

Boylece plesk panelimiz sorunsuz sekilde kurulmus oldu. Simdi sira panele girip baslangic ayarlarini yapmak, ucretsiz trial 15 gunluk kullanim icin dosya islemlerini halletmek, panelimizin tadini cikarmak :)

Sunucunuzun IP adresini adres satirina yazarak panelimize ulasalim. Bunu asagidaki sekilde yapin, aksi halde panele ulasmaniz zor olacaktir :)

https://SUNUCU-IP-ADRESINIZ:8443/

Sonrasinda root sifreniz ile panele giris yapin. Karsiniza kullanici sozlesmesi cikacak, kabul edip devam edelim:

Ardindan acilacak panelde sunucu adi ve ip adresi kisimlari olacak. burada yeni IP ekleyebilirsiniz. Ve en altdan admin sifresi olusturmaniz gerekli..

Burda degistirecek yada ekleyecek biseyiniz yoksa, sifrelerinizi belirleyip okeyleyin, sonraki adima gecin..

Bu adimda sizden bir secim yapmaniz istenecek, bu panelinizin kullanimina yonelik bir secim olacak, yani size uygun olani secin, gelismis webhostin yonetimi icin en usttekini secebilirsiniz:

Diger acilan alanlari duzenlemenize gerek yok, en iyi goruntulenme sekli seciliyor zaten :)

Ardindan bilgilerinizi isteyecek sizden, doldurup devam edin:

Bu adimda plesk panelinizi full sekilde kullanmaniz icin key yuklemesi yapmaniz gerekli, ucretli almayacaksaniz 15 gunluk ucretsiz deneme key dosyasini resimdeki link’e tiklayarak alabilirsiniz, daha sonra ikinci yuvarlak kisimdan da key dosyasini yukleyin, sonrasinda paneliniz full olacak ve kullanmaya baslayabilirsiniz:

Key dosyasini yuklerken altda iki secenek olarak, ikisinide secin, yoksa yukleme gerceklesmez..

Ve ideal son:

Kategoriler
Centos hakkında Nginx Plesk

Centos/Plesk panel sunucularda nginx kurulumu!

Plesk panel kullananların yıllardan beri aynıdır sorunu, nginx ‘i iyi şekilde kuramamak :) Aşağıdaki anlatacağım yazı ile 5dk gibi bir sürede sitelerinizi nginx yardımı ile göstermeye başlayabilirsiniz. Yaptığım testlerde hit olmamasına rağmen apache üzerindeki wordpress siteler oldukça yavaş durumdaydı. Nginx e geçtikten sonra bu süre gözle görülür derecede düştü ve sitede dolaşma, gezme oranı arttı..

Testler sırasında kullandığım plesk panel son versiyondu sanırım 10.0.1 15 günlük deneme süresi var. ancak aplıkasyon kısmı çok hoşuma gitti, birçok şeyi kolayca ve hızlıca kurabiliyorsunuz, ilerde bu konuda detaylı bir inceleme yapacağım :)

1: ilk adım nginx’i kuralım
Nginx’i yum deposundan kuracağız, büyük ihtimal yum deponuzda nginx uygulaması yoktur, bu yüzden aşağıda işletim sisteminize uygun olan kısmı ssh den çalıştırın:

CentOS 5

rpm -Uvh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm

CentOS 6

rpm -Uvh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

Sonrasında aşağıdaki yum kodu ile nginxi kuralım:

yum install nginx

Kurulum sırasında size kurulsunmu diye soru süracak y yaparak enter yapın kurulum tamamlansın. şuanda nginx sisteminize sorunsuz şekilde kurulmuştur.

Sırada nginx conf dosyasını kendi hazırladığımız ile değiştirmek var:

rm -rf /etc/nginx/nginx.conf
cd /etc/nginx/
wget www.makaleci.com/dersler/nginx/nginx.conf

2: Siteleri Nginx’e tanıtma
Sıra hesabımızdaki siteleri nginx’e tanıtmaya geldi. Bunun için bu dosyayı düzenlememiz gerekli:
/etc/nginx/conf.d/default.conf

Ben düzenlemek için cuteftp yada filezilla programını kullanıyorum. ancak sizde bunlardan birisi yoksa ssh ilede düzenleme yapabilirsiniz.
SSH ile dosyayı düzenlemek için bu şekilde açın: nano /etc/nginx/conf.d/default.conf

Dosya içerisindeki herşeyi silin ve aşağıdaki örnek kodu düzenleyerek ekleyin: (Guncellendi: 22/11/2011 19:26)

server {
access_log off;
error_log /var/log/httpd/nginx.errors.DOMAIN.com.log warn;
listen 80;
server_name DOMAIN.com www.DOMAIN.com;

# Nginx'in calistirmasini istediginiz statik dosya uzantilarini belirleyin.
location ~* .(gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css)$ {
root /var/www/vhosts/DOMAIN.com/httpdocs; # Burda domaine ait kok dizini belirtiyoruz.
}

location / {
proxy_send_timeout 90;
proxy_read_timeout 90;

proxy_buffer_size 4k;
proxy_buffers 16 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;

proxy_connect_timeout 30s;

proxy_redirect http://www.DOMAIN.com:8080 http://www.DOMAIN.com;
proxy_redirect http://DOMAIN.com:8080 http://DOMAIN.com;

proxy_pass http://DOMAIN-IP-ADRESINIZ: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;
}
}

Bu kalıp’a dikkat edin, hesabınızda kaç tane domain varsa bu kalıbı kullanarak tanımlamanız gerekli, yani her domain için alt alta yeniden eklemeniz gerekli. Yani bir domain için yukarıdaki kalıbı eklediğinizde default.conf dosyasına, yeni bir domain eklemek isterseniz aynı dosyada en altdan bir satır aşağı geçerek aynı kalıbı kullanarak diğer domaini tanımlamalısınız..

Ne kadar site varsa hepsini default.conf dosyasında tanımladıktan sonra dosyayı kaydedin ve kapatın.

3: Apache portunu düzenlemek
Şimdi yapacağımız işlemde apache portunu düzenleyerek nginx’e yönlendireceğiz, böylece gelen her istek nginx’e giderek işleyecek, statik dosyalar haricindekiler ise apachede kalacak. (hesabınızdaki siteler hariç, o düzenleme sonraki adımda yapılacak)

Bu dosyayı düzenlememiz gerekli: /etc/httpd/conf/httpd.conf
ssh ile yapacaklar: nano /etc/httpd/conf/httpd.conf

Bu dosya içinde Listen 80 kısmı bulup bu şekilde değiştireceğiz: Listen 8080
Kaydedip çıkıyoruz.

3:a – Apache icin mod_rpaf kurulumu:
mod proxy and forward denilen bu modul sayesinde biz nginxden gelen istemlerin normal istemciden gelmis gibi gorunmesini saglayacagiz.

Guncel modul versiyonu icin buraya bakabilirsiniz (asagidaki gunceldir mod_rpaf: 0.6): http://stderr.net/apache/rpaf/download/

cd /usr/local/src
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
tar xvfz mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6
apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

Bu modulu kurabilmeniz icin sunucunuzda httpd-devel, gcc uygulamalarinin kurulu olmasi gereklidir, eger bunlar yoksa yada hata aliyorsaniz mod_rpaf kurulumunda asagidaki kodu ssh den calistirin ve eklentileri kurun:

yum install httpd-devel gcc

Sonrasinda mod_rpaf kurulumu kurulumunu tekrar bastan yapin..

mod_rpaf kurulduktan sonra httpd.conf dosyanizi acin ve musait bir yere ekleyin:

LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 10.0.0.1 (ornek: 127.0.0.1 IP1 IP2 IP3 v.s)
RPAFsethostname On
RPAFheader X-Forwarded-For

Kod icerisinde de belirtilen ip kisminin devamina sunucuda ekli olan butun ipleri bir bosluk birakarak yazmaniz gerekli, aksi halde istatistik programlari veya scriptleri her ziyaretciyi default sunucu ip sinde gorecektir, yani kod icerisindeki (127.0.0.1) ipsinden.
NOT: 127.0.0.1 ip adresini silmemeniz gerekli, diger ip adreslerini devamina eklemeniz gerekli.. (sunucuda kac ip varsa hepsini bir bosluk birakarak devamina ekleyin.)

4: Hesabımızdaki siteleri nginx’e yönlendirelim
Pleskde sitelerin konfigürasyon dosyaları bu klasör içinde bulunur herzaman: /var/www/vhosts/DOMAİN.COM/conf
Bu klasör içinde domaine ait ip, yönlendirme v.s gibi bilgiler yer alır, burdaki dosyaları düzenleyerek içerisinde 80. portu gelen istekleri nginx portuna yönlendirecek şekilde düzenleyeceğiz. Bu düzenlemeyi her domain için yapmanız gerekli, en azından nginx’in yorumlamasını istediğiniz ve nginx’e tanıttığınız siteleriniz için.

Klasör içindeki bütün dosyaları açın, örnek bu şekilde oluyor isimleri genelde:

ve aşağıdaki gibi bir yer arayın: Genelde 135-140. satırlar arasında yer alır.


ServerName "DOMAIN.COM:80"
ServerAlias "www.DOMAIN.COM"

Yani kısaca ordaki dosyaların hepsini açın ve bunu aratın :80 bulduklarınızı da bununla değiştirin :8080

Yine bu düzenlemeyi o klasördeki bütün dosyalarda aratıp bulduklarınızda yapın. Ve hesabınızda ekli bütün domainler için ayrı ayrı yapmanız gerekli :)

4:a – Birden fazla IP li domain varsa eger:

birden fazla domain ve bu domainlere ayri ayri ip atanmis ise asagidaki gibi ipleri belirtmeniz gerekli her domain ipsi icin:

NameVirtualHost ip1:8080
NameVirtualHost ip2:8080
NameVirtualHost ip3:8080
NameVirtualHost ip4:8080

yani her ip icin tanimlama girmeniz gerekli. Genelde vps sitelerinde cikabilecek bir sorun, eger her domainize ayri ayri ip atamis iseniz bu ayari yapmaniz gerekmektedir. Aki halde acilmama gibi sorunlarla karsilasabilirsiniz.

Sonrasında önce apache’e restart atıp sonrada nginx’i başlatalım.
Apache restart:

service httpd restart

Nginx başlat:

service nginx start

Lazım olabilecekler:
Nginx yeniden başlatma:

service nginx restart

Guncellendi: 21/11/2011 19:39
Son bir adim kaldi. Oda kok dizin chmod ayarini duzenlemek. bunu yapmazsaniz nginx’e yonlendirdigimiz statik dosyalar calismayacaktir ve 404 not found hatasi verecektir.
Sitenizin kok dizininin chmod ayarini 0750 den 0755 e cevirin (degistirin): /var/www/vhosts/DOMAIN.com/httpdocs

Ornek resimdeki gibi olacak:

Buraya kadar sorunsuz ve hatasız geldi iseniz hayırlı olsun artık tanımladığını domainler nginx tarafından yorumlanıyor demektir. Bunu test etmek için buraya girip sitenizi sorgulatın ve çıkan sonuçlarda nginx ile versiyon numarasını görün. Görüyorsanız kendinizle gurur duyun :)

5: Nginx’i yeni versiyona guncelleme
Nginx yeni versiyon ciktiginda asagidaki yum kodunu ssh den yazip enter yapin:

yum update nginx

Sonrasinda size soru soracak y yazip enter yapin nginx guncellensin otomatik olarak :)

sonrasinda nginx e restart atalim:

service nginx restart

Bu dokümanı hazırlarken 3 vds den yararlandım, 3’unde de kurdum sorunsuz çalıştı. Netde ki çoğu anlatımda farklı eklentileride kurduruyorlar size ancak problem çıkmadığı için gerek duymadım onları kurmaya. ancak olaki bir sorun çıkarsa yorum olarak bize bildirin, doküman o yönde güncellenecek, yenilenecek, evrim geçirecektir :)

Su an itibari ile dokuman guncellenmistir: 31/01/2012 19:58 (domainleri nginx’e tanitirken kullandigimiz kalip kodlarinda guncelleme yaptim, nginx in isleyecegi statik dosyalari belirterek nginxden daha fazla yararlanmamizi sagladik.

Yeni guncelleme: mod_rpaf kurulumunu anlattim, bunun eksikliginde ziyaretciler ayni IP den girilmis gibi goruluyor ve ip bazli korumali scriptlerde giris sorunu yasanmaktadir. Ayrica giren herkesi ayni ipden gorundugu icin dogru sonuc alinamamaktadir. bu yuzden boyle eksiklikleri yasamamak icin bu eklentiyi kurmamiz gerekli. Lutfen yukaridaki guncelleme tarihinden once bu dokumani kullananlar mod_rpaf kurulum kismini uygulayarak sunucularini guncellesinler.

Yeni guncelleme: Birden fazla ip li ve degisik ipdeki domainler icin duzenleme. Eger her domaine farkli ip atiyorsaniz, bu ayari yapmaniz yerinde olacaktir. bunun icin 4:a kismini uygulamaniz yeterli olacaktir.

Vatana millete hayirli olsun) :)