Bu Dokuman daha once hazirladigim Centos ve cpanel sunucularda nginx kurulumu dokumuninin guncel ve kolay halidir. Kullanimda yada kurulumda karsilastiginiz sorunlari bu konu altindan belirtirseniz o yonde guncellenecektir..


Size anlatacagim yontem apache ile stabil calisan ve url rewrite kurallarini yine sitenizin .htaccess dosyanizdan belirtebileceginiz sekilde yapabilmenizi saglayacak. bunun icin apacheye lazim olacak olan bir kac modulu kurmamiz gerekiyor. isterseniz oncelikle onlardan baslayalim:

Baslamadan once bilmeniz gerekenler:
1 – SSH ile asagidaki islemler gerceklestirilecek, ara ara WHM panelden de ayar yapmamiz gerekecek.
2 – dosya duzenlemelerinde ve olusturmalarinda nano programini kullanacagiz, dosya kaydedip cikmak icin bu sirayi izlemeniz yeterli: F2 –> Y –> ENTER
3 – Hosunuza giden bir muzik acmanizda gerekebilir, motivasyon acisindan cok onemli..

1 – 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/

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:

Sonrasinda mod_rpaf kurulumu kurulumunu tekrar bastan yapin..

mod_rpaf kurulduktan sonra WHM panelinizi acin ve asagidaki yolu izleyin:

WHM: Main >> Service Configuration >> Apache Configuration > Include Editor > Pre Main Include

Asilan sayfada pre main include kismindaki seceneklerden kullandiginiz versiyonu secin (all version) ve altinda acilan bos yere asagidakileri ekleyin ve kaydedin: (ornek resim)

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.)

2 – PCRE kütüphanesini Yüklemek (Guncellendi – pcre 8.330)

Son sürümü buradan indirebilirsiniz:

Bu modulunde kurulumu bittikten sonra apache portunu degistirelim.

3 – Apache Portunu duzenlemek
Bu adimda genelde 80 portunu kullanir apache, biz bunu nginx okuyabilecegi sekilde duzenleyecegiz ve 81 portunu acacagiz. boylece DOMAIN.COM:80 olarak girildiginde apache calisacak, DOMAIN.COM:81 seklinde girildiginde de nginx calisacak. Boylece gelen istekleri yonlendirecegiz.

Yine WHM panelinize girin ve asagidaki yolu takip edin:
WHM: Main >> Server Configuration >> Tweak Settings

Bu sayfada asagidakilerden birisini aratin:
1: Apache non-SSL IP/port
2: 0.0.0.0:80

(bunu: 0.0.0.0:80 bu sekilde degistirip kaydedeceksiniz: 0.0.0.0:81)

Buradaki resimdeki gibi bir alan bulmaniz gerekli, sonrasinda 80 olan kismi siz 81 olarak degistirip en altan ayarlari kaydet yapacaksiniz.

Bu islemden sonra asagidaki kodu calistiriyoruz:

Ardindan asagidakileri yapip ayarlari tam kaydediyoruz:

4 – Nginx Kurulumu
Nginx kurulumunu yum deposunu kullanarak yaplim, boylece kurulum islemini kisaltmis oluruz. Bunun icin asagidakilerden size uygun olan kismi ssh den calistirin.

Oncelikle yum ile nginx kurmaya calisalim:

Eger kurulum gerceklesmezse ve depoda yok uyarisi alirsaniz asagidaki kodlari kullanarak nginx kurulum dosyasini yum depolarimiza ekleyelim:

Sunucunuza uygun olani secin ve ssh den calistirin:
CentOS 5

CentOS 6

Kendinize uygun olan kismi uyguladiktan sonra nginx otomatik kurulum dosyasi yum depolarina eklenmis oldu, ilk kullandigimiz kurulum kodunu tekrar sshden calistiralim:

Bunun ardindan nginx’in kurulmus olmasi gerekli. Bu adimdan sonra tek yapacagimiz sey hesabimizdaki domainleri tanimlamak.

Orjinal kurulan nginx konfigurasyon dosyasinda cogu sey belirtilmemistir ve eksiktir. Ozellikle nginx in gzip ozelligi bile acik degildir ve bununla beraber cogu faydali ozellikleri acmak icin asagidaki islemleri sshden uygulayin:

Yenilendi (sadece bu bolum guncellendi):
Bu islemden sonra hesabimizdaki siteleri nginx’e tanitalim. Asagidakileri sirayla sshde uygulayin: (08/12/2011 18:20 tarihinde guncellenmistir. Daha once kuranlar, tekrar bu alani uygulasinlar sshden. Statik dosyalar ile ilgili bolum eklendi.)

Ve hic ugrasmadan butun sitelerimizi nginx’e tanitmis olduk…

NOT: Eger sitenizdeki statik dosyalar acilmazsa ve 404 not found hatasi verirse: /home/DOMAIN.com/public_html klasorune chmod 755 degerini vermeniz yeterli olacaktir..

Asagidaki komutu kullanarak ayarlarin dogru olup olmadigini kontrol ediyoruz:

Yada;

Ve Buyuk An Nginx’i baslatiyoruz:

Sorunsuz basladiginiz goruyorsaniz islemleri basari ile gecmissiniz demektir :)

istediginiz zaman nginxe asagidaki sekilde restart atabilirsiniz (yani yeniden baslatabilirsiniz):

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

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

sonrasinda nginx e restart atalim:

Ve sonuc: (sizde burdan kontrol edebilirsiniz)

…………….

Makalede Kurulanlar ve guncel liste: 07/1/2012
mod_rpaf: 0.6
pcre 8.20
nginx 1.0.11 kurulumu ve guncellenmesi
* 21/11/2011 21:20: Nginx in statik dosyalari calistabilmesi icin websitelerin tanitildigi konfigurasyon dosyasinda guncellenme yapilarak aagidaki alan eklenmistir:

Bu eklemeden sonra sitenizdeki statik dosyalar calismayacaktir, bunun icin: /home/DOMAIN.com/public_html klasorune chmod 755 degerini vermeniz yeterli olacaktir..

* 07/1/2012 05:01: Nginxdeki gzip modulunu aktif ettim, bir kac alandada guncelleme yaparak performansi artirdim.

* 14/04/2013 13:31: Bir script yazarak ve calistirarak hesabinizdaki sitelerin config dosyasini otomatik olusturmasini saglayacagiz. Bunun icin asagidaki sirayi takip edin:

acilan bos ekrana asagidakileri kopyalayip yapistirin:

Herhangi bir sorunda konu altindan bilgilendirme yaparsaniz, makale o yonde guncellenecektir. Kolay gelsin.

120 YORUMLAR

  1. Bu yazi digerinden biraz farkli arkadaslar, nginx kurulum kismi yum ile yapilmakta, yani onceki gibi kodlarla v.s ugrasmiyorsunuz. ancak onceki kurulumdaki statik dosyalari belirttigim kismi burdaki anlatimla uyguladigim nginx de belirtdigimde neden se calismiyor, bunun nedenini anladigimda size yazarim, suanda sorunsuz sekilde kullaniyorum. bu anlatimla hazirladigim vds de kullandigim ornek web siteleri:
    http://www.makaleci.org
    http://www.makaleci.net

    Dokuman eksikliklerini gordukce yada ogrendikce guncellenecektir..

    • yani ne var ne yok hepsini cpanel mi yorumluyor.. yada nginx neleri okuyor. php lerde mi nginxe geçti directadmin ve panelsiz de bekliyoruz.. süpersin eline sağlık

      • nginx’in php yorumlamasi zor, apache yorumluyordur, ancak statik dosyalarin nginx tarafindan islendigini dusunuyorum, sonucda denemelerimde http header bilgileri nginx i gosteriyor. bunun yaninda php dosyalarini calistirdiginizda nginxden yonlenerek apacheye gidiyor. Yani gelen her istek nginxden geciyor diyelim :) Statik dosyalar nginx tarafindan isleniyor, geri kalansa apacheye paslaniyor. (Benim teorim boyle en azindan) :)

        • cpanel demişim pardon apache, sanırım dediğin gibi yorumlama olayı.. panelsiz ve directadmin için de olursa süper olur.. yani aslında ücretsiz (Kloxo, EHCP) ya da lisans ücreti düşük olan paneller için yazılacak bir döküman çok daha fazla kişinin işine yarar..

      • Tam olarka denemedim ama mantik olarak asagidakileri dene:

        once bunu silelim: /etc/init.d/nginx
        rm /etc/init.d/nginx yada rm -rf /etc/init.d/nginx

        sonrasinda nginx klasorunu komple sil.
        ardindan yukaridaki anlatimda yer alan 4. adimi uygula. Sitelerini nginx e tanittiktan sonra sorunsuz sekilde nginx calisiyorsa yarini bekle, bize haber ver, kapanma sorunu tekrar olacakmi :)

    • 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

    • direk derken sadece nginx mi calissin ? ancak apache olmadan nginx calismaz, malum dunucuya gelen isteklerin yonlendirilip calismasinda gereklidir. Bu php, v.s tarzi dosyalarin calistirilmasi icin gereklidir, nginx php dosyalari uzerinde etkili degildir..

  2. Makale suan itibari ile guncellenmistir arkadaslar ve bazi eksiklikler giderilmistir. Suanki tarihten once kurulum yapan arkadaslar yukaridaki dokumanda: Yenilendi (sadece bu bolum guncellendi) kismini tekrar uygulasinlar ve chmod duzenlemesini mutlaka yapsinlar..

  3. hocam olmadı bu sefer yaa alttaki hata çıkıyo start deyince

    Starting nginx: nginx: [emerg] could not build the server_names_hash, you should increase either server_names_hash_max_size: 512 or server_names_hash_bucket_size: 64
    [FAILED]

          • içerik bu

            user nginx;
            worker_processes 1;

            error_log /var/log/nginx/error.log warn;
            pid /var/run/nginx.pid;
            events {
            worker_connections 1024;
            }
            http {
            include /etc/nginx/mime.types;
            default_type application/octet-stream;
            log_format main ‘$remote_addr – $remote_user [$time_local] “$request” ‘
            ‘$status $body_bytes_sent “$http_referer” ‘
            ‘”$http_user_agent” “$http_x_forwarded_for”‘;
            access_log /var/log/nginx/access.log main;
            client_header_timeout 3m;
            client_body_timeout 3m;
            send_timeout 3m;
            client_header_buffer_size 1k;
            large_client_header_buffers 4 4k;
            gzip on;
            gzip_min_length 1100;
            gzip_buffers 4 8k;
            gzip_types text/plain;
            output_buffers 1 32k;
            postpone_output 1460;
            sendfile on;
            tcp_nopush on;
            tcp_nodelay on;
            keepalive_timeout 75 20;
            include /etc/nginx/conf.d/default.conf;
            }

  4. içerik bu hocam hepsini alamadım ama

    tüm siteler var

    ##### aftalha.com – 85.17.172.246 ## Sitesi icin nginx konfigurasyon alani##
    server {
    listen 80;
    server_name aftalha.com http://www.aftalha.com;

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

    location / {
    proxy_redirect http://www.aftalha.com:81 http://www.aftalha.com;
    proxy_redirect http://aftalha.com:81 http://aftalha.com;
    proxy_pass http://85.17.172.246:81/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    client_max_body_size 10m;
    client_body_buffer_size 128k;
    proxy_connect_timeout 90;
    proxy_send_timeout 90;
    proxy_read_timeout 90;
    proxy_buffers 32 4k;
    }
    }

    ##### anilguzey.tk – 85.17.172.246 ## Sitesi icin nginx konfigurasyon alani##
    server {
    listen 80;
    server_name anilguzey.tk http://www.anilguzey.tk;

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

    location / {
    proxy_redirect http://www.anilguzey.tk:81 http://www.anilguzey.tk;
    proxy_redirect http://anilguzey.tk:81 http://anilguzey.tk;
    proxy_pass http://85.17.172.246:81/;

    • Bu kisim dikkatinizi cekmedimi :) : root /home/DOMAIN.com/public_html; # Burda domaine ait kok dizini belirtiyoruz. burdaki kok dizini sitenin kok dizinine gore duzenleyin, kaydedin ve tekrar nginx i baslatmayi deneyin. Normalde cpanel icin otomatik olusturmasi gerekiyordu bunu, demek bir yeri atladim, inceleyip dokumani ona gore duzenleyecegim..

  5. Arkadaslar nginx de sitelerin otomatik config dosyalarini olusturdugumuz bash scriptde bir hata yapmisim, onu duzelttim, hata alanlar buyuk ihtimal ondan aliyorlardir, ancak buyuk bir hata degil elle bile duzeltilebilir. Yinede bunun yerine tekrar bu kismi yapmaniz yeterli olacaktir: Yenilendi (sadece bu bolum guncellendi):
    Bu islemden sonra hesabimizdaki siteleri nginx’e tanitalim. Asagidakileri sirayla sshde uygulayin: (08/12/2011 18:20 tarihinde guncellenmistir. Daha once kuranlar, tekrar bu alani uygulasinlar sshden. Statik dosyalar ile ilgili bolum eklendi.)

    cd /root
    wget http://www.makaleci.com/dersler/nginx/nginx.sh
    sh nginx.sh

  6. Birşey belirteyim,

    [error] 4230#0 hatası veriyor vbulletin sistemlerde statik dosyaları nginx in açmasını isteyince.

    vbseo eklenen eklentileri rewrite yapıp seo luyor ya.

    site.com/eklentiler/resim.jpg oluyor misal ama böyle bir dizin yok normalde. bu yüzden statik jpg dosyasını arıyor bulamıyor [error] 4230#0

    buna bi çare var mı?

    • vbseo ile ilgili bir sorun var, bu eklentiyi calistirdiginizda ALBUM kismindaki resimler acilmiyor, bu kisimda resimlerin seo ozelligini kapatmanizi oneririm. VBSEO ayarlarinda permalink yada url rewrite ayarlari kisminda album icin olan kismi deaktif etmeniz yeterli, en azindan guzel bir cozum bulana kadar isimizi gorur, sorun cikmaz :)

        • Tabi oda olur, ama bu seferde nginx’in fazla bir fonksiyonu kalmiyor, sonucda statik dosyalari islemeyecek, yine apachede calisacak. Bu vbseo olayina cozum bulana kadar yinede en mantiklisi dedigin gibi yapmak. Bu arada bos durma, sende biraz arastir, once bulan yazsin :) yeni konu acip bilgi verelim.

          • hocam araştırıyorum. yalnız ilginçtir statik dosyaları çağırma özelliğini kapatıyorum ama headers check yaptığımda nginx görünüyor web sunucusu olarak o nasıl oluyor. aslında apache den işlenip nasıl nginx görünüyor…

            bide şu an ben sırf apache mi kullanıyorum jpg dosyalarını çağırmıyorsam?

            apache kullanmadan, sadece nginx kullanmak nasıl olur centos cpanel makinede. yani nginx in rewrite özelliğini kullanarak tek başına çalışan nginx kurabilir miyim?

            gerekirse makinayı formatlayıp panelsiz veya başka panel önerirsen o şekilde bir kurulum yapabiliriz.

          • nginx basli basina bir websunucusu degil, apache ye ihtiyaci var. Soz konusu apacheye gelen istekleri islemeden once biz portu duzenleyerek nginxe yonlendirdik, nginx islemesi gerekenleri isler ustune farz olmayan islemleride tekrar apacheye yonlendirir. Bu dongu sirasinda nginxde tanimladigimiz statik dosyalar eger tanimlanmamis ise apacheye tekrar gonderilir, yani resim dosyalarida apache tarafindan islenir ve her dosya icin bir islem alani acilir, bunun fazla olmasi apacheyi kitleyecektir. Bu yuzden elinizden geldigince statik dosyalari nginx ile islemeye calisin.

            Soz konusu header check deki nginx ibaresininde sebebi budur, biz istekleri apacheden once nginxe yonlendiriyoruz.

  7. vbseo eklentileri rewrite edemediğini vbseo ekibine söyledim ama destek vermiyoruz bu konularda cevabı aldım.

    statik dosyalarımı seomu koruyarak nasıl nginx ile çağırabilirim , lütfen bu işi başaran birisi varsa bizlere yardım etsin :)

  8. gzip i aktif edebilen var mı? ne denediysem olmadı… nginx.conf içeriğim böyle

    user nginx;
    worker_processes 1;

    error_log /var/log/nginx/error.log warn;
    pid /var/run/nginx.pid;
    events {
    worker_connections 1024;
    }
    http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    log_format main ‘$remote_addr – $remote_user [$time_local] “$request” ‘
    ‘$status $body_bytes_sent “$http_referer” ‘
    ‘”$http_user_agent” “$http_x_forwarded_for”‘;
    access_log /var/log/nginx/access.log main;
    client_header_timeout 3m;
    client_body_timeout 3m;
    send_timeout 3m;
    client_header_buffer_size 1k;
    large_client_header_buffers 4 4k;
    server_tokens off;
    gzip on;
    gzip_min_length 1100;
    gzip_buffers 4 8k;
    gzip_types text/plain application/x-javascript text/css;
    output_buffers 1 32k;
    postpone_output 1460;
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 75 20;
    include /etc/nginx/conf.d/default.conf;
    }

      • sadece www ile çalışıyor yabancı hit düşünenler için mantıklı.. ama tr ziyaretçisi olanlar içinde trafiği azaltmada işe yarayabilir.

        nginx kurulu cloudflare sunucularında sitenizin statik dosyalarını dünyanın farklı yerlerinde ki sunuculardan yükletiyorsunuz. örneğin belçika dan sitenize giriş varsa belçikaya en yakın cloudflare sunucusundan statik dosyalarınızın yükleniyor. cloudflare de nginx kullanıyor.

        • Artilari ve eksileriyle bu konuda bir yazi yazacagim. Cloudflare nginx destekliyor, Gercekten cogu zaman faydasini gorebiliyorsunuz, ozellikle hiz konusunda ciddi derecede faydasi oluyor. Ozellestirilebilir ayarlari ve bir cok applikasyon ozelligi sayesinde cidden cogu siteyi ayakta tutan bir sistem. Tabi genel olarak buyuk saldirilarda fazla etkin rol oynamiyor ve birakiyor. onun haricinde hersey super :)

  9. http://www.makaleci.com/centoscpanel-sunucularda-nginx-kurulumu-2.html ve http://www.makaleci.com/nginx-web-sunucusunda-gzip-aktif-etme-yuzde-30-performans-artisi.html makalelerini sitemde uyguladım. Sanırım sorunsuz geçti kurulum …

    ama http://www.ahiska.net siteye girdiğimde ” Welcome to nginx! ” yazıyor …. Diğer alt sayfalarda ise ( http://www.ahiska.net/haritahttp://www.ahiska.net/haber ) ” 404 Not Found ” hatası veriyor ki ” public_html ” klasörünün chmod değerini “755” yaptım ve buna rağmen siteye ulaşılamıyor :( …

        • Teşekkür ederim, sayenizde sorun çözüldü …

          Bu verdiğiniz kodu aslında defalarca denedim ama sanırım wget ile indirdiğim nginx.sh dosyası sunucuda zaten var olduğu için yeni indirdiğim dosyayı nginx.sh.1 , nginx.sh.2 olarak kaydediyordu ve sonrasında ise sh nginx.sh komutunu çalıştırdığım için o isimde önceden var olan eski dosyyı çalıştırıyordu ve değişen birşey olmuyordu…

          şimdi ise sh nginx.sh.2 olarak çalıştırdım ve çalıştı ;)

  10. Daha önce kurulu olan Development versiyon vardı ve onu kaldırmadan bu makaledekileri uyguladım ardından siteye ulaşamaz oldum saatlerdir.

    http://www.ahiska.net siteye girdiğimde ” Welcome to nginx! ” yazıyor ….
    http://www.ahiska.net/haber alt sayfalarda ise 404 Not Found hatası veriyor…

    public_html klasörünün chmod değerini 755 yaptım …

    Buna rağmen siteye ulaşamıyorum saatlerdir, Lütfen yardım…

      • Merhaba,

        Tekrar çalıştırdım ve site açıldı, sorun çözüldü, teşekkür ederim.

        ama daha sonra Cpanel’den bir mail geldi …

        [ipcheck] Problem with DNS setup on vps.ahiska.net

        IMPORTANT: Do not ignore this email.

        Your hostname (vps.ahiska.net) could not be resolved to an IP
        address. This means that /etc/hosts is not set up correctly, and/or
        there is no dns entry for vps.ahiska.net. Please be sure that the
        contents of /etc/hosts are configured correctly, and also that
        there is a correct ‘A’ entry for the domain in the zone file.

        Some or all of these problems can be caused by /etc/resolv.conf
        being setup incorrectly. Please check that file if you believe
        everything else is correct.

        You may be able to automatically correct this problem by using the
        ‘Add an A entry for your hostname’ option under ‘Dns Functions’ in
        your Web Host Manager.

        /etc/hosts dosyamın içeriği


        ::1 localhost.localdomain localhost
        127.0.0.1 localhost.localdomain localhost
        # Auto-generated hostname. Please do not remove this comment.
        46.102.245.52 vps.ahiska.net cpanel vps

        /etc/resolv.conf dosyamın içeriği Buradaki IP ler bana yabancı, benim VPS ‘me ait IP’ler 46.102.245.52 ve 46.102.247.152 , sorun bundan kaynaklı olabilir mi acaba ?

        nameserver 8.8.4.4
        nameserver 85.17.96.69
        nameserver 83.149.80.123
        nameserver 62.212.64.122

  11. Hocam son tespitim şu:

    vbseo panelde url’nin sonundaki .html’yi kaldırınca açılıyor.
    wordpressde kalıcı baglantı ayarlarından url’nin sonundaki html’yi kaldırınca wp konuları da açılmaya başlıyor. Yani url’nin sonunda html gelince sayfalar acılmıyor. Bu konuda desteğinizi bekliyoruz.

  12. Üstünde biraz uğraştım:

    location ~* .(html|gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css)$ {

    bu satırdaki html ‘yi silince düzeldi. Ama bunu kaldırınca performansda düşme meydana gelirmi? çünkü vbseo kullandıgım için rewrite olayı sistemi çok yoruyor?

    • Dokumandaki dosyada html ekli degil, cunku url rewrite durumlarinda linklerin sonuna genelde .html ekleniyor, ancak dosyanin asli html degil php. Boyle bir durumda nginx dosyayi html yani statik dosya olarak okuyor, bu yuzdende calismiyor. Herhangi bir performans sorunu olacagini sanmiyorum, olmazda zaten nginx’in isi statik, yani dinamik olmayan dosyalari islemek.

  13. Emeğinize teşekkür ediyorum. Bu kadar karmaşık bir konuyu, bu kader sade ve düzenli anlatmışsınız. Bende hiç anlamayan biri olarak cesaret edip kurabildim.
    Yalnız “wget http://www.makaleci.com/dersler/nginx/nginx.conf ” kısmına geldiğimde kendi sitemin domaini ile değiştireceğimi sanınca epey uğraştığımı da belirteyim. :)

    Hocam bir sorum olacak, website kısmında yazdığım sitemde resimler görünmüyor ve aradaki dizinleri çıkmıyor..

    • o kodun sadece sh nginx.sh kismini tekrar calistirarak yeni ekledigin domainleri nginx’e tanitabilirsin normal olarak. Bunun haricinde eklentigin her domainin port’u nginx icin ayarli sekilde gelecek, tekrar apache de dosya duzenlemenize gerek yok.

  14. Ben diğer makaleye göre kurdum, 1.0.15 versionunun üstüne çıkamıyorum.. Hatalar alıyorum… make sürecinde…

    Acaba burdaki belirtilen işlemleri yapınca nginx’in son sürümünü kurabiliyor mu?

    Misal şu an 1.2.1 versiyonu var stabil. yum update nginx yapınca 1.2.1 sürümü stabil olarak kuruluyor mu?

    Makinaya format atıp bu makalede anlatılanları mı uygulasam?

    • eski makaleye gore yapmis iseniz suanki nginx i kaldirmaniz gerekli ki bunun nasil oacagi konusunda tam net bir fikrim yok. eger format atma sansiniz varsa, sizi zorlamyacaksa guzel bir makine hazirlayip temiz kurulum yapmanizi oneririm ve siddetle burdaki yazilanlar ile kurmanizi tavsiye ederim. Hem kolay, hemde nginx yeni versiyon ciktiginda yum update nginx yaparak hic ugrasmadan nginx yeni versiyona guncelleyebilirsiniz. Ancak format atamiyoraniz makineye, burdaki anlatimi yapmaya calisin, son kurulumu gorme ihtimali yuksek ama yinede sansa birakmis oluruz isimizi.

  15. keepalive_timeout neden 300 saniye acaba merakımdan soruyorum.
    gördüğüm kadarıyla bir çok site bu özelliği kullanmıyor.
    connection close yanıtını görüyorum çoğu sitenin header ında.

    bu değerin defaultu 75 miş, google’ın geliştirdiği page speed kritlerine göre en ideal değer hangisi?

    • keepalive_timeout: Bağlantının kapanmadan önceki bekletileceği süreyi belirler. Yani sen siteye bağlandıgında bağlantı açık kalır. Sonra tekrar girdiğinde tekrar yeni bir bağlantı açılmak yerine daha önceki bağlantı üzerinden işlem yaparsınız. Konudaki rakam idealdir.

      bunun pagespeed v.s etkisi yoktur. Sitendeki kodlamayla alakalıdır. kullandığınız scripti iyileştirdiğinizde pagespeed değeride artacaktır.

      • yani bunu 300 s yaptığımızda şöyle mi oluyor,

        Google botu 300 saniye boyunca aynı bağlantıyı kullanacak, sitede çok geziyorsa da sürekli aynı bağlantıdan siteye ulaşacak öyle mi?

        bunu sıfır yapsak sınırlama koymasak nolur?

        • Küçük bir örnek vermek istiyorum: evinizi taşıyacaksınız ve arkadaşlarınızla toplanıp kamyondaki eşyaları yeni evinize taşıyacaksınız. Evdede kapıyı açan küçük kardeşiniz olduğunu düşünelim. eşyaları eve taşırken her defasında kapıyı çalıp, açılmasını bekleyip öyle eve girdiğinizi düşünün. Dışarıya her çıktığınızda da kardeşinizin kapıyı tekrar kapattığını ve bu döngünün böyle devam ettiğini düşünün. Burda işinizi nasıl kolaylaştırırdınız ? Kapıyı size açık bırakmasını mı ? yoksa eskisi gibi her defaşında kapının kapanması ile mi ?

          Mantığı anlayacağınızı umuyorum. Çünkü mantık ile işlerinizi daha kolay hale getirebilirsiniz.

  16. varnish ne oluyor usta, bazı server aracı firmalar, nginx-varnish kurulumunu ücretsiz yaptıklarını söylüyorlarda merak ettim.

    bu dediğini olayda nginx kurunca üstüne varnish de kuruluyor mu?

  17. siteleri tanıtmak istediğimde aşağıdaki hata mesajını alıyorum, yardımcı olabilirmisiniz?

    sh nginx.sh
    : command not found
    : command not found
    : No such file or directoryr/cpanel/users
    ‘ginx.sh: line 7: syntax error near unexpected token do
    'ginx.sh: line 7:
    for USER in *; do

  18. herşey güzel hocam son adıma geliyorum sh.nginx yaptığım zaman

     
    [email protected] [/]# sh nginx.sh
    : command not found
    : command not found
    : No such file or directorycpanel/users
    ‘ginx.sh: line 7: syntax error near unexpected token do
    'ginx.sh: line 7:
    for USER in *; do

     

    bu hatayı alıyorum neden olabilir acaba cpanel kullanıyorum.

  19. hocam nginx portunu kapatınca apachede siteler gayet güzel açılıyor fakat siteleri manuel olarak eklediğim halde ve public_html klasorune 755 değeri verdiğim halde nginxe geçince 404 not found hatası alıyorum daha önceki sunucuya bu makaleyi kullanarak rahat bir şekilde yükleme yapmıştım ve kullanıyordum problem nerde acaba

  20. nginx.sh dosyasini el ile indirin daha sonra bu komutu sshden uygulayin: nano nginx.sh

    aciln alana indirdiginiz dosyadaki kodlari oraya yapistirin sonra nanoyu kapatin ve sh nginx.sh komutunu tekrar uygulayin, sorun cikarsa yazin tekrar..

  21. merhaba  dediginiz gibi yaptim  convert etti  ancak  simdide baska birsey oldu :)

    bunu yapın ca bu sekil bi ileti aliyorum

    yada bunu yapinca da

    bu sekil bir ileti aliyorum

  22. merhaba kurulumun sorunsuz oldugunu bir önceki mesajimda belirtmistim tekrardan tesekkürederim

    yeni fark ettigim bir sorunum var sub domaine kurulan sistemler de resim ve css dosyalarini göstermiyor sanirim görüntü bozuk cıkıyor bu sorunu nasil düzelte bilirim

    simdiden tesekkürederim

  23. Bu kismi duzeltmen gerekli. root parametresi subdomainin tam yolunu gostermelisin.

    location ~* .(gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css) {
    root /home/DOMAIN.com/public_html/subdomain; # Burda domaine ait kok dizini belirtiyoruz.
    }

  24. peki bunu tüm sub domainlerde manuel mi yapmak gerek yoksa bir bash gibi birsey olabilir mi cünki bayagi acik sub domain var  sunucuda ( ve tabi benım haberim olmadan acilacak olanlarda olacaktir)

    • nginx.conf ve nginx.conf dosyani yedekle ve makalenin en altinda yeni ekledigim kismi uygula. bunun butun siteleri ve subdomainleri sisteme eklemesi gerek. Bunu her calistirdiginda sistemdeki domainleri nginx e ekleyecektir, ancak eger degisiklik yaparsan conf dosyalarinda bunlar silinecektir. bu yuzden yaptigin degisiklikleri verdigim bash scriptinede yaparsan tekrar sil bastan ayarlari yapmana gerek kalmaz. Kolay gelsin.

  25. tamam evet sub domainleri ekliyor zaten ama css ve imajlari göstermesi icin

    location ~* .(gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css) {
    root /home/DOMAIN.com/public_html/subdomain; # Burda domaine ait kok dizini belirtiyoruz.
    }

     

    yapin demissiniz ya

    bunu mauel yapacam sanirim  nginx.sh  dosyasinda bunu otomatiklestirmenin bir yolu varmı diye sormustum

    ama sanirim anlatamadim yada anlatmayi beceremedim :)

    • Bash scriptinde bu kodlar var zaten, tek yapmaniz gereken baslarindaki # karekterlerini kaldirmak.

      #location ~* \.(gif|jpg|jpeg|png|wmv|avi|mpg|mpeg|mp4|js|css)$ {
      # root $ROOT/public_html;
      #}

      bunlarin basindaki # karakterlerini kaldirip tekrar calistirin..

  26. cok basinizi agrittim ama  benım bash script de zaten öle

    icerigini kopyalıyorum

     

     

Bir Cevap Yazın