Sayfalar

24 May 2010

Nginx Kurulumu

Nginx


Igor Sysoev tarafından geliştirilen kararlı yapısı ve  minimum düzeyde sistem kullanımı sayesinde daha fazla performans ihtiyacı olan büyük şirketlerin kurtarıcısı konumuna gelmiştir. Nginx'e sadece basit bir sunucu olarak değinip geçmekle bence biraz da haksızlık etmiş oluruz nginx aynı zamanda reverse proxy ve IMAP/POP3 proxy sunucusudur. 2002'de doğmuş olan nginx aynı zamanda ücretsiz olması da büyük internet servislerinin sunucu tabanı oluşturmada tercih edilme sebebidir şuanda baktığımızda  Apache'ye alternatif olarak gözüküyor her ne kadar beta olduğu iddia edilse de (!) bence son derece kararlı ve performans açısından da son derece hızlı diyebilirim.
Projeye 2002 yılında başlanıp, 2004 yılında sunulmuştur ve şuan baktığımız da dünyanın önde gelen siteleri tarafında tercih edilmesi de sanırım bu alanda diger rakiplerini sıkıştıracağa da benziyor.
Kurulum sonrası yaptığım incelemelerde daha önce Apache sunucuyla ilgilenmiş olan arkadaşlar görecektir ki karmaşık olmayan bir yapı sergilemekte genel olarak baktığımızda zaten tüm sunularda aynıdır...
Sunucu seçiminde nginx tercih eden örnek siteler ise WordPress, Hulu, Github, Ohloh, SourceForge, FriendFeed, HaberTürk, Bildirgeç, SesliSözlük ve TorrentReactor... sıralayabiliriz

Bu yazımda nginx temel kurulumunu php modülü yüklemeyi anlatacağım ilerleyen günlerde zaman buldukça konuya biraz daha genişleteceğim.

sudo apt-get install nginx lighttpd mysql-server mysql-client php5-cgi php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xs

#/etc/init.d/nginx start




php modülünü ön tanıtımlı olarak çalıştırmak için.

öncelikle /var/www/nginx-default dizini altına demek amacıyla bir php betiği atalım ben saat ve tarih yazdırmak istiyorum.
örnek kod aşağıda

<?php


$tarih = date("d.m.Y"); // Geçerli sistem tarihini almak için 
$saat = date("H:i:s"); // Geçerli sistem saatini almak için 

echo "Tarih : ".$tarih."<br>";
echo "Saat  : ".$saat;


?>



oluşturduğunuzu varsayarak sırasıyla 

sudo chmod +x /etc/init.d/php-fastcgi

sudo /etc/init.d/php-fastcgi start

komutlarını girdikten sıra geldi nginx yapılandırmaya aşağıdaki komutu verdiğimiz de karşınıza uzunca bir sayfa çıkacak sizin için önemli  olan kısım ve degiştirilmesi gerek yerleri ben koyu renkle yazıyorum  gerekli değişikleri yaptıktansa resetliyoruz ve ön tanıtımlı olarak php işini de noktalamış oluyoruz.

sudo nano /etc/nginx/sites-available/default
sudo /etc/init.d/nginx restart


# You may add here your
# server {
#    ...
# }
# statements for each of your virtual hosts

server {
    listen   80;
    server_name  localhost;

    access_log  /var/log/nginx/localhost.access.log;

    location / {
        root   /var/www/nginx-default;
        index  nginx.php index.html;
                fastcgi_index   nginx.php;
location ~ \.php {
                include /etc/nginx/fastcgi_params;
                keepalive_timeout 0;
                fastcgi_param   SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                fastcgi_pass    127.0.0.1:9000;
        }


   
karışmaması için  sadece gerekli olan yerleri bellirttim /root/www dizini altına tarih ve saat göstermek için benim sonradan oluşturduğum dosyanın adı nginx.php sizde kendi dosya adınızı belirteceksiniz...





2 yorum:

  1. Merhaba;

    Nginx kurulumu konusunda desteğe ihtiyacım var. Üzerinde WP 3 Multisite kullanılacak bir kurulum için bütçe verebilirseniz sevinirim.

    İyi çalışmalar

    Erkan Şahan

    YanıtlaSil
  2. Merhabalar;

    Destek; kurulum konusunda yardımcı olabilirim haricinde ben de gönüllü bir linux kullanıcısıyım yani bu alanda yardımcı olabilirim

    Teşekkürler sizede iyi çalışmalar

    YanıtlaSil