{"id":1018,"date":"2025-08-29T15:48:15","date_gmt":"2025-08-29T12:48:15","guid":{"rendered":"https:\/\/verimin.com.tr\/blog\/?p=1018"},"modified":"2025-08-29T15:48:15","modified_gmt":"2025-08-29T12:48:15","slug":"nginx-nedir-hangi-amacla-kullanilir","status":"publish","type":"post","link":"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/","title":{"rendered":"NGINX Nedir? Hangi Ama\u00e7la Kullan\u0131l\u0131r?"},"content":{"rendered":"<h2><span class=\"ez-toc-section\" id=\"NGINX_Nedir\"><\/span><strong>NGINX Nedir?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NGINX, a\u00e7\u0131k kaynakl\u0131 bir web sunucusu yaz\u0131l\u0131m\u0131d\u0131r ve ters proxy, y\u00fck dengeleme ile \u00f6nbellekleme i\u015flevlerinde kullan\u0131l\u0131r. HTTPS sunucu \u00f6zellikleri sunar ve en y\u00fcksek performans ile kararl\u0131l\u0131k hedeflenerek tasarlanm\u0131\u015ft\u0131r. Ayr\u0131ca IMAP, POP3 ve SMTP gibi e-posta ileti\u015fim protokolleri i\u00e7in proxy sunucusu olarak da g\u00f6rev yapabilir.\u00a0<\/span><\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 ez-toc-wrap-left counter-flat ez-toc-counter ez-toc-white ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<div class=\"ez-toc-title\" style=\"cursor:inherit\">\u0130\u00e7erik Ba\u015fl\u0131klar\u0131:<\/div>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_Nedir\" title=\"NGINX Nedir?\">NGINX Nedir?<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_Hangi_Amaclarla_Kullanilir\" title=\"NGINX Hangi Ama\u00e7larla Kullan\u0131l\u0131r?\">NGINX Hangi Ama\u00e7larla Kullan\u0131l\u0131r?<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#Web_Sunucusu_Olarak_Kullanimi\" title=\"Web Sunucusu Olarak Kullan\u0131m\u0131\">Web Sunucusu Olarak Kullan\u0131m\u0131<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#Reverse_Proxy_Gorevi\" title=\"Reverse Proxy G\u00f6revi\">Reverse Proxy G\u00f6revi<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#Load_Balancer_Yuk_Dengeleyici_Olarak_Kullanimi\" title=\"Load Balancer (Y\u00fck Dengeleyici) Olarak Kullan\u0131m\u0131\">Load Balancer (Y\u00fck Dengeleyici) Olarak Kullan\u0131m\u0131<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#Content_Caching_Onbellekleme_Islevi\" title=\"Content Caching (\u00d6nbellekleme) \u0130\u015flevi\">Content Caching (\u00d6nbellekleme) \u0130\u015flevi<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#Guvenlik_Duvari_ve_HTTP_Yonlendirme_Kurallari\" title=\"G\u00fcvenlik Duvar\u0131 ve HTTP Y\u00f6nlendirme Kurallar\u0131\">G\u00fcvenlik Duvar\u0131 ve HTTP Y\u00f6nlendirme Kurallar\u0131<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINXin_SEO_Acisindan_Onemi\" title=\"NGINX\u2019in SEO A\u00e7\u0131s\u0131ndan \u00d6nemi\">NGINX\u2019in SEO A\u00e7\u0131s\u0131ndan \u00d6nemi<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_ile_Hangi_Teknolojiler_Uyumlu_Calisir\" title=\"NGINX ile Hangi Teknolojiler Uyumlu \u00c7al\u0131\u015f\u0131r?\">NGINX ile Hangi Teknolojiler Uyumlu \u00c7al\u0131\u015f\u0131r?<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_Nasil_Kurulur\" title=\"NGINX Nas\u0131l Kurulur?\">NGINX Nas\u0131l Kurulur?<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_ile_Yaygin_Kullanim_Senaryolari\" title=\"NGINX ile Yayg\u0131n Kullan\u0131m Senaryolar\u0131\">NGINX ile Yayg\u0131n Kullan\u0131m Senaryolar\u0131<\/a><\/li><li class='ez-toc-page-1'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/verimin.com.tr\/blog\/nginx-nedir-hangi-amacla-kullanilir\/#NGINX_Avantajlari_ve_Dezavantajlari\" title=\"NGINX Avantajlar\u0131 ve Dezavantajlar\u0131\">NGINX Avantajlar\u0131 ve Dezavantajlar\u0131<\/a><\/li><\/ul><\/nav><\/div>\n\n<h2><span class=\"ez-toc-section\" id=\"NGINX_Hangi_Amaclarla_Kullanilir\"><\/span><strong>NGINX Hangi Ama\u00e7larla Kullan\u0131l\u0131r?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Nginx, d\u00fc\u015f\u00fck bellek t\u00fcketimi ve y\u00fcksek e\u015fzamanl\u0131 i\u015flem kapasitesi sa\u011flamak i\u00e7in geli\u015ftirilmi\u015ftir. Her web iste\u011fi i\u00e7in yeni s\u00fcre\u00e7ler olu\u015fturmak yerine, asenkron ve olay tabanl\u0131 bir yakla\u015f\u0131m kullanarak t\u00fcm istekleri tek bir i\u015f par\u00e7ac\u0131\u011f\u0131nda y\u00f6netir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Nginx\u2019te bir ana s\u00fcre\u00e7, birden fazla \u00e7al\u0131\u015fan s\u00fcreci y\u00f6netebilir. Ana s\u00fcre\u00e7 \u00e7al\u0131\u015fanlar\u0131 kontrol ederken, \u00e7al\u0131\u015fanlar i\u015flemleri y\u00fcr\u00fct\u00fcr. Asenkron mimarisi sayesinde her istek e\u015fzamanl\u0131 olarak i\u015flenebilir ve di\u011ferlerini engellemez.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Nginx\u2019in \u00f6ne \u00e7\u0131kan \u00f6zelliklerinden baz\u0131lar\u0131 \u015funlard\u0131r:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00d6nbellekleme destekli ters proxy<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">IPv6<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Y\u00fck dengeleme<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">FastCGI deste\u011fi ve \u00f6nbellekleme<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">WebSockets<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Statik dosyalar, dizin dosyalar\u0131 ve otomatik indeksleme deste\u011fi<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">TLS\/<a href=\"https:\/\/verimin.com.tr\/ssl-sertifikalari\" data-internallinksmanager029f6b8e52c=\"13\" title=\"ssl sertifikas\u0131\">SSL<\/a> ve SNI deste\u011fi<\/span><\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"Web_Sunucusu_Olarak_Kullanimi\"><\/span><span style=\"font-weight: 400;\">Web Sunucusu Olarak Kullan\u0131m\u0131<\/span><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in geli\u015ftirilme amac\u0131 en h\u0131zl\u0131 web sunucusunu ortaya \u00e7\u0131karmakt\u0131 ve bu hedef g\u00fcn\u00fcm\u00fczde de projenin temel odak noktas\u0131 olmaya devam ediyor. Web sunucu performans\u0131n\u0131 \u00f6l\u00e7en kar\u015f\u0131la\u015ft\u0131rmalarda NGINX, Apache ve di\u011fer sunucular\u0131n \u00f6n\u00fcne ge\u00e7mektedir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in ilk s\u00fcr\u00fcm\u00fcnden bu yana web siteleri basit HTML sayfalar\u0131ndan, dinamik ve \u00e7ok y\u00f6nl\u00fc i\u00e7eriklere evrilmi\u015ftir. NGINX de bu geli\u015fime ayak uydurarak WebSocket, HTTP\/2, gRPC ve \u00e7e\u015fitli video formatlar\u0131n\u0131n (HDS, HLS, RTMP ve di\u011ferleri) yay\u0131nlanmas\u0131n\u0131 destekleyecek \u015fekilde geli\u015fmi\u015ftir.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Reverse_Proxy_Gorevi\"><\/span><strong>Reverse Proxy G\u00f6revi<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Proxy kullan\u0131m\u0131 genellikle y\u00fck\u00fc birden fazla sunucuya da\u011f\u0131tmak, farkl\u0131 web sitelerinin i\u00e7eriklerini tek noktadan sunmak veya HTTP d\u0131\u015f\u0131ndaki protokollerle \u00e7al\u0131\u015fan uygulama sunucular\u0131na istekleri iletmek i\u00e7in tercih edilir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX bir iste\u011fi proxy sunucuya y\u00f6nlendirdi\u011finde a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izler:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u0130ste\u011fi belirtilen proxy sunucusuna g\u00f6nderir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Yan\u0131t\u0131 al\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Yan\u0131t\u0131 istemciye geri iletir.<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Bir HTTP sunucusuna (ba\u015fka bir NGINX veya farkl\u0131 bir sunucu) ya da HTTP d\u0131\u015f\u0131 bir sunucuya (\u00f6rne\u011fin PHP veya Python ile geli\u015ftirilmi\u015f uygulama sunucular\u0131) uygun protokol arac\u0131l\u0131\u011f\u0131yla y\u00f6nlendirme yap\u0131labilir. Desteklenen protokoller aras\u0131nda FastCGI, uwsgi, SCGI ve memcached bulunur.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">proxy_pass y\u00f6nergesi, HTTP proxy sunucusuna istek g\u00f6ndermek i\u00e7in <\/span><b>location<\/b><span style=\"font-weight: 400;\"> blo\u011fu i\u00e7inde tan\u0131mlan\u0131r. Bu yap\u0131land\u0131rma, isteklerin belirtilen adresteki proxy sunucuya aktar\u0131lmas\u0131n\u0131 sa\u011flar. Adresler <a href=\"https:\/\/verimin.com.tr\/alan-adi\" data-internallinksmanager029f6b8e52c=\"1\" title=\"domain\">alan ad\u0131<\/a> veya IP adresi olarak yaz\u0131labilir, ayr\u0131ca port da eklenebilir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">E\u011fer adrese bir URI eklenmi\u015fse, bu URI istekle e\u015fle\u015fen b\u00f6l\u00fcm\u00fcn yerine ge\u00e7er. Adres yaln\u0131zca sunucu adresiyle belirtilmi\u015fse, tam istek URI\u2019si oldu\u011fu gibi aktar\u0131l\u0131r (gerekirse de\u011fi\u015ftirilmi\u015f \u015fekilde).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">HTTP d\u0131\u015f\u0131ndaki sunuculara y\u00f6nlendirme yap\u0131l\u0131rken uygun y\u00f6nerge kullan\u0131lmal\u0131d\u0131r:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">fastcgi_pass FastCGI sunucusuna istek g\u00f6nderir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">uwsgi_pass uwsgi sunucusuna istek g\u00f6nderir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">scgi_pass SCGI sunucusuna istek g\u00f6nderir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">memcached_pass memcached sunucusuna istek g\u00f6nderir.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Bu senaryolarda adreslerin yaz\u0131m kurallar\u0131 farkl\u0131 olabilir ve sunucuya ek parametreler g\u00f6ndermek gerekebilir. Ayr\u0131ca, proxy_pass y\u00f6nergesi birden fazla sunucunun bulundu\u011fu gruplara da istek iletebilir. Bu durumda istekler, belirtilen y\u00f6nteme g\u00f6re sunucular aras\u0131nda da\u011f\u0131t\u0131l\u0131r.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Load_Balancer_Yuk_Dengeleyici_Olarak_Kullanimi\"><\/span><strong>Load Balancer (Y\u00fck Dengeleyici) Olarak Kullan\u0131m\u0131<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Birden fazla uygulama \u00f6rne\u011fi aras\u0131nda y\u00fck dengeleme, kaynak kullan\u0131m\u0131n\u0131 optimize etmek, veri ak\u0131\u015f\u0131n\u0131 en \u00fcst d\u00fczeye \u00e7\u0131karmak, gecikmeleri azaltmak ve hata toleransl\u0131 yap\u0131land\u0131rmalar sa\u011flamak i\u00e7in yayg\u0131n \u015fekilde kullan\u0131lan bir tekniktir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX, trafik ak\u0131\u015f\u0131n\u0131 birden fazla uygulama sunucusuna da\u011f\u0131tmak i\u00e7in olduk\u00e7a verimli bir HTTP y\u00fck dengeleyici olarak kullan\u0131labilir. Bu sayede web uygulamalar\u0131n\u0131n performans\u0131, \u00f6l\u00e7eklenebilirli\u011fi ve g\u00fcvenilirli\u011fi art\u0131r\u0131l\u0131r.<\/span><\/p>\n<p><b>Y\u00fck Dengeleme Y\u00f6ntemleri<\/b><\/p>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in destekledi\u011fi y\u00fck dengeleme y\u00f6ntemleri \u015funlard\u0131r:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>round-robin<\/b><span style=\"font-weight: 400;\"> \u2014 \u0130stekler uygulama sunucular\u0131na s\u0131rayla da\u011f\u0131t\u0131l\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>least-connected<\/b><span style=\"font-weight: 400;\"> \u2014 Sonraki istek, en az aktif ba\u011flant\u0131ya sahip sunucuya y\u00f6nlendirilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>ip-hash<\/b><span style=\"font-weight: 400;\"> \u2014 \u0130stemcinin IP adresine dayal\u0131 olarak bir hash fonksiyonu \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r ve hangi sunucunun se\u00e7ilece\u011fi bu \u015fekilde belirlenir.<\/span><\/li>\n<\/ul>\n<p><b>Varsay\u0131lan Y\u00fck Dengeleme Yap\u0131land\u0131rmas\u0131<\/b><\/p>\n<p><span style=\"font-weight: 400;\">En basit y\u00fck dengeleme yap\u0131land\u0131rmas\u0131 a\u015fa\u011f\u0131daki gibidir:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">http {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">upstream myapp1 {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">server srv1.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">server srv2.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">server srv3.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">listen 80;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">location \/ {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">proxy_pass http:\/\/myapp1;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Yukar\u0131daki \u00f6rnekte ayn\u0131 uygulaman\u0131n <\/span><b>srv1\u2013srv3<\/b><span style=\"font-weight: 400;\"> \u00fczerinde \u00e7al\u0131\u015fan \u00fc\u00e7 \u00f6rne\u011fi vard\u0131r. Y\u00fck dengeleme y\u00f6ntemi \u00f6zel olarak belirtilmedi\u011finde, varsay\u0131lan olarak round-robin kullan\u0131l\u0131r. T\u00fcm istekler myapp1 sunucu grubuna aktar\u0131l\u0131r ve NGINX HTTP y\u00fck dengelemesini uygular.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX\u2019te ters proxy uygulamas\u0131; HTTP, HTTPS, FastCGI, uwsgi, SCGI, memcached ve gRPC i\u00e7in y\u00fck dengeleme deste\u011fi i\u00e7erir. TTP yerine HTTPS i\u00e7in yap\u0131land\u0131rma yap\u0131lacaksa sadece protokol k\u0131sm\u0131nda <\/span><b>https<\/b><span style=\"font-weight: 400;\"> kullan\u0131l\u0131r. FastCGI, uwsgi, SCGI, memcached veya gRPC i\u00e7in y\u00fck dengeleme yap\u0131lacaksa s\u0131ras\u0131yla fastcgi_pass, uwsgi_pass, scgi_pass, memcached_pass ve grpc_pass y\u00f6nergeleri kullan\u0131l\u0131r.<\/span><\/p>\n<p><b>Least Connected Y\u00fck Dengeleme<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Di\u011fer bir y\u00f6ntem olan <\/span><b>least-connected<\/b><span style=\"font-weight: 400;\">, baz\u0131 isteklerin daha uzun s\u00fcrmesi durumunda y\u00fck\u00fcn adil \u015fekilde da\u011f\u0131t\u0131lmas\u0131n\u0131 sa\u011flar. Bu y\u00f6ntemde NGINX, yo\u011fun olarak \u00e7al\u0131\u015fan bir sunucuya fazla y\u00fck bindirmek yerine, yeni gelen istekleri daha az yo\u011fun olan bir sunucuya y\u00f6nlendirir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX\u2019te least-connected y\u00f6ntemi, sunucu grubu yap\u0131land\u0131rmas\u0131na least_conn y\u00f6nergesi eklendi\u011finde etkinle\u015fir:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">upstream myapp1 {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">least_conn;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv1.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv2.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv3.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><b>Oturum Kal\u0131c\u0131l\u0131\u011f\u0131 (Session Persistence)<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Round-robin veya least-connected y\u00f6ntemlerinde, ayn\u0131 istemciden gelen ard\u0131\u015f\u0131k istekler farkl\u0131 sunuculara y\u00f6nlendirilebilir. Yani istemcinin her zaman ayn\u0131 sunucuya ba\u011flanaca\u011f\u0131 garanti edilmez.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">E\u011fer istemcinin belirli bir uygulama sunucusuna sabitlenmesi (yani oturumunun \u201csticky\u201d olmas\u0131) gerekiyorsa, <\/span><b>ip-hash<\/b><span style=\"font-weight: 400;\"> y\u00f6ntemi kullan\u0131labilir. Bu y\u00f6ntemde istemcinin IP adresi hash anahtar\u0131 olarak kullan\u0131l\u0131r ve istemciden gelen t\u00fcm istekler ayn\u0131 sunucuya y\u00f6nlendirilir. Yaln\u0131zca ilgili sunucu devre d\u0131\u015f\u0131 kald\u0131\u011f\u0131nda istemci ba\u015fka bir sunucuya y\u00f6nlendirilir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">ip-hash y\u00f6ntemini etkinle\u015ftirmek i\u00e7in yap\u0131land\u0131rmaya ip_hash y\u00f6nergesi eklenir:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">upstream myapp1 {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">ip_hash;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv1.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv2.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv3.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><b>A\u011f\u0131rl\u0131kl\u0131 Y\u00fck Dengeleme (Weighted Load Balancing)<\/b><\/p>\n<p><span style=\"font-weight: 400;\">NGINX\u2019te y\u00fck dengeleme algoritmalar\u0131n\u0131 daha esnek hale getirmek i\u00e7in sunuculara a\u011f\u0131rl\u0131k de\u011feri atanabilir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00d6nceki \u00f6rneklerde sunucu a\u011f\u0131rl\u0131klar\u0131 belirtilmedi\u011finden t\u00fcm sunucular e\u015fit kabul edilmi\u015ftir. \u00d6zellikle round-robin y\u00f6nteminde bu, isteklerin sunucular aras\u0131nda e\u015fit da\u011f\u0131lmas\u0131 anlam\u0131na gelir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Sunucuya <\/span><b>weight<\/b><span style=\"font-weight: 400;\"> parametresi atan\u0131rsa, bu de\u011fer y\u00fck dengeleme karar\u0131nda dikkate al\u0131n\u0131r:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">upstream myapp1 {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv1.example.com weight=3;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv2.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server srv3.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Bu yap\u0131land\u0131rmada gelen her 5 iste\u011fin 3\u2019\u00fc <\/span><b>srv1<\/b><span style=\"font-weight: 400;\">\u2019e, 1\u2019i <\/span><b>srv2<\/b><span style=\"font-weight: 400;\">\u2019ye, 1\u2019i de <\/span><b>srv3<\/b><span style=\"font-weight: 400;\">\u2019e y\u00f6nlendirilir.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Content_Caching_Onbellekleme_Islevi\"><\/span><strong>Content Caching (\u00d6nbellekleme) \u0130\u015flevi<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">\u00d6nbellekleme etkinle\u015ftirildi\u011finde, <\/span><b>F5 NGINX Plus<\/b><span style=\"font-weight: 400;\"> yan\u0131tlar\u0131 disk \u00fczerinde saklar ve ayn\u0131 i\u00e7erik i\u00e7in her defas\u0131nda proxy \u00fczerinden sunucuya gitmek yerine bu yan\u0131tlar\u0131 do\u011frudan istemcilere g\u00f6nderir.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">NGINX Plus\u2019\u0131n \u00f6nbellekleme yetenekleri hakk\u0131nda daha fazla bilgi edinmek i\u00e7in \u201cContent Caching with NGINX\u201d ba\u015fl\u0131kl\u0131 web seminerini izleyebilir ve dinamik i\u00e7erik \u00f6nbellekleme, \u00f6nbellek temizleme (cache purging) ve gecikmeli \u00f6nbellekleme gibi \u00f6zelliklerin ayr\u0131nt\u0131l\u0131 incelemesini \u00f6\u011frenebilirsiniz.<\/span><\/p>\n<p><b>Yan\u0131tlar\u0131n \u00d6nbelle\u011fe Al\u0131nmas\u0131n\u0131 Etkinle\u015ftirme<\/b><\/p>\n<p><span style=\"font-weight: 400;\">\u00d6nbellekleme i\u015flemini etkinle\u015ftirmek i\u00e7in en \u00fcst d\u00fczey http {} ba\u011flam\u0131na proxy_cache_path y\u00f6nergesi eklenir. \u0130lk zorunlu parametre, \u00f6nbelle\u011fe al\u0131nan i\u00e7eri\u011fin saklanaca\u011f\u0131 dosya sistemi yoludur. keys_zone parametresi ise \u00f6nbelle\u011fe al\u0131nan \u00f6\u011felerin metaverilerini tutmak i\u00e7in kullan\u0131lan payla\u015f\u0131ml\u0131 bellek b\u00f6lgesinin ad\u0131n\u0131 ve boyutunu belirtir:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">http {<\/span><\/p>\n<p><span style=\"font-weight: 400;\"># &#8230;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">proxy_cache_path \/data\/nginx\/cache keys_zone=mycache:10m;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Daha sonra, yan\u0131tlar\u0131n \u00f6nbelle\u011fe al\u0131nmas\u0131n\u0131 istedi\u011finiz ba\u011flamda (protokol t\u00fcr\u00fc, <a href=\"https:\/\/verimin.com.tr\/sanal-sunucu\" data-internallinksmanager029f6b8e52c=\"7\" title=\"sanal sunucu\">sanal sunucu<\/a> veya location) proxy_cache y\u00f6nergesi eklenir. Burada, proxy_cache_path y\u00f6nergesindeki keys_zone parametresiyle tan\u0131mlanan b\u00f6lge ad\u0131 kullan\u0131lmal\u0131d\u0131r (bu \u00f6rnekte <\/span><b>mycache<\/b><span style=\"font-weight: 400;\">):<\/span><\/p>\n<p><span style=\"font-weight: 400;\">http {<\/span><\/p>\n<p><span style=\"font-weight: 400;\"># &#8230;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">proxy_cache_path \/data\/nginx\/cache keys_zone=mycache:10m;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">proxy_cache mycache;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">location \/ {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">proxy_pass http:\/\/localhost:8000;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00a0\u00a0\u00a0\u00a0<\/span> <span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Burada dikkat edilmesi gereken nokta, keys_zone parametresiyle belirlenen boyutun \u00f6nbelle\u011fe al\u0131nan yan\u0131tlar\u0131n toplam boyutunu s\u0131n\u0131rlamamas\u0131d\u0131r. Yan\u0131tlar\u0131n kendisi dosya sistemindeki \u00f6zel dosyalarda, metaverileriyle birlikte saklan\u0131r. \u00d6nbelle\u011fe al\u0131nan yan\u0131tlar\u0131n toplam miktar\u0131n\u0131 s\u0131n\u0131rlamak i\u00e7in proxy_cache_path y\u00f6nergesine max_size parametresi eklenebilir. Ancak, \u00f6nbelle\u011fe al\u0131nan veri miktar\u0131 belirli durumlarda bu s\u0131n\u0131r\u0131 ge\u00e7ici olarak a\u015fabilir.<\/span><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Guvenlik_Duvari_ve_HTTP_Yonlendirme_Kurallari\"><\/span><strong>G\u00fcvenlik Duvar\u0131 ve HTTP Y\u00f6nlendirme Kurallar\u0131<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><span style=\"font-weight: 400;\">NGINX geleneksel anlamda bir g\u00fcvenlik duvar\u0131 de\u011fildir ancak IP izin\/engelleme (whitelisting\/blacklisting) ve istek oran\u0131 s\u0131n\u0131rlamas\u0131 (rate limiting) gibi kurallar uygulanarak g\u00fcvenlik duvar\u0131 benzeri i\u015flevler yerine getirilebilir. Ger\u00e7ek a\u011f tabanl\u0131 g\u00fcvenlik duvar\u0131 kontrol\u00fc i\u00e7in ise genellikle <\/span><b>UFW<\/b><span style=\"font-weight: 400;\"> veya <\/span><b>iptables<\/b><span style=\"font-weight: 400;\"> gibi ara\u00e7lar NGINX ile birlikte kullan\u0131l\u0131r.<\/span><\/p>\n<p><b>NGINX Eri\u015fim Kontrol\u00fc (G\u00fcvenlik Duvar\u0131 Benzeri Kurallar)<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">allow ve deny y\u00f6nergeleri kullan\u0131larak sunucu veya location bloklar\u0131 i\u00e7inde belirli IP adreslerine ya da IP aral\u0131klar\u0131na eri\u015fim k\u0131s\u0131tlamas\u0131 uygulanabilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u00d6rne\u011fin, yaln\u0131zca belirli bir IP\u2019ye izin verilip di\u011ferlerinin engellenmesi:<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">location \/admin {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">allow 192.168.1.1;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">deny all;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Bu yap\u0131land\u0131rma, se\u00e7ilen yollar veya t\u00fcm site i\u00e7in HTTP seviyesinde eri\u015fim kontrol\u00fc sa\u011flar.<\/span><\/p>\n<p><b>NGINX\u2019te HTTP Y\u00f6nlendirme Kurallar\u0131<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">En yayg\u0131n kullan\u0131m, HTTP trafi\u011fini HTTPS\u2019e y\u00f6nlendirmektir:<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">server {<\/span><\/p>\n<p><span style=\"font-weight: 400;\">listen 80;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">server_name example.com www.example.com;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">return 301 https:\/\/$host$request_uri;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">}<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Bu yap\u0131land\u0131rma ile 80 numaral\u0131 porttaki t\u00fcm HTTP istekleri, 443 numaral\u0131 porttaki HTTPS\u2019e y\u00f6nlendirilir.<\/span><\/li>\n<\/ul>\n<p><b>UFW ile NGINX G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">NGINX kurulduktan sonra, a\u00e7\u0131k portlar\u0131 y\u00f6netmek i\u00e7in genellikle <\/span><b>UFW (Uncomplicated Firewall)<\/b><span style=\"font-weight: 400;\"> kullan\u0131l\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Web sunucular\u0131 i\u00e7in gerekli portlar\u0131 a\u00e7mak i\u00e7in \u015fu komutlar kullan\u0131labilir:<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">sudo ufw allow &#8216;Nginx HTTP&#8217; \u00a0 # port 80 i\u00e7in<\/span><\/p>\n<p><span style=\"font-weight: 400;\">sudo ufw allow &#8216;Nginx HTTPS&#8217;\u00a0 # port 443 i\u00e7in<\/span><\/p>\n<p><span style=\"font-weight: 400;\">sudo ufw allow OpenSSH\u00a0 \u00a0 <\/span> <span style=\"font-weight: 400;\"># SSH eri\u015fimi i\u00e7in, ba\u011flant\u0131 kayb\u0131n\u0131 \u00f6nlemek amac\u0131yla<\/span><\/p>\n<p><span style=\"font-weight: 400;\">sudo ufw enable<\/span><\/p>\n<p><span style=\"font-weight: 400;\">sudo ufw status<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"NGINXin_SEO_Acisindan_Onemi\"><\/span><strong>NGINX\u2019in SEO A\u00e7\u0131s\u0131ndan \u00d6nemi<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in <a href=\"https:\/\/verimin.com.tr\/seo-paketleri\" data-internallinksmanager029f6b8e52c=\"10\" title=\"seo paketleri\">SEO<\/a>\u2019ya katk\u0131s\u0131, esas olarak HTTP\/2 protokol\u00fcn\u00fc verimli bir \u015fekilde desteklemesinden kaynaklan\u0131r. HTTP\/2; web sitesi h\u0131z\u0131n\u0131, mobil performans\u0131, g\u00fcvenli\u011fi ve tarama (crawl) verimlili\u011fini art\u0131rarak SEO a\u00e7\u0131s\u0131ndan \u00f6nemli avantajlar sa\u011flar.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"NGINX_ile_Hangi_Teknolojiler_Uyumlu_Calisir\"><\/span><strong>NGINX ile Hangi Teknolojiler Uyumlu \u00c7al\u0131\u015f\u0131r?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NGINX olduk\u00e7a esnek bir yap\u0131 sunarak bir\u00e7ok modern web ve teknolojiyle uyumlu \u00e7al\u0131\u015f\u0131r. \u00d6rne\u011fin, HTTP\/2 deste\u011fi ile birlikte SSL\/TLS (HTTPS) sertifikalar\u0131yla entegrasyonu sa\u011flar. Ayr\u0131ca, PHP-FPM, Node.js, Python WSGI uygulamalar\u0131 gibi arka u\u00e7 uygulamalarla proxy ve y\u00fck dengeleme yapabilir. Ek olarak, API sunucular\u0131, mikroservisler, Load Balancer \u00e7\u00f6z\u00fcmleri gibi yap\u0131lar\u0131n \u00f6n\u00fcnde ters proxy olarak da kullan\u0131labilir. Redis, Memcached gibi \u00f6nbellekleme sistemleri ise h\u0131z ve performans optimizasyonuna destek olur.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"NGINX_Nasil_Kurulur\"><\/span><strong>NGINX Nas\u0131l Kurulur?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">T\u00fcrkiye\u2019nin en g\u00fcvenilir hosting sa\u011flay\u0131c\u0131lar\u0131ndan olan verimin.com.tr olarak yaz\u0131m\u0131z\u0131n bu k\u0131sm\u0131nda, Linux \u00fczerinde NGINX kurulumunu nas\u0131l yapaca\u011f\u0131n\u0131z\u0131 anlatmaktay\u0131z:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u00d6ncelikle Linux makinenizi a\u00e7\u0131n ve a\u015fa\u011f\u0131daki komutla g\u00fcncelleme i\u015flemi yap\u0131n:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 sudo apt-<\/span><b>get<\/b><span style=\"font-weight: 400;\"> update<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Ard\u0131ndan a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n::\u00a0<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 sudo apt-<\/span><b>get<\/b><span style=\"font-weight: 400;\"> install nginx<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Daha sonra g\u00fcvenlik duvar\u0131n\u0131 etkinle\u015ftirin:\u00a0<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 sudo ufw enable<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in kuruldu\u011funu do\u011frulamak i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 <\/span><b>nginx<\/b><span style=\"font-weight: 400;\"> -v<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">NGINX\u2019in \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 \u00f6\u011frenmek i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131rabilirsiniz:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 <\/span><b>sudo<\/b><span style=\"font-weight: 400;\"> ufw status<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Bu komutun \u00e7\u0131kt\u0131s\u0131 \u015fu \u015fekilde olmal\u0131d\u0131r:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 <\/span><b>status<\/b><span style=\"font-weight: 400;\">: active<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Sunucunun sorunsuz \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in \u015fu komutu girin:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\"> \u00a0 \u00a0 \u00a0 \u00a0 <\/span><b>sudo<\/b><span style=\"font-weight: 400;\"> systemctl status nginx<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Her \u015fey do\u011fru \u015fekilde \u00e7al\u0131\u015f\u0131yorsa ba\u015far\u0131l\u0131 bir durum mesaj\u0131 g\u00f6receksiniz.<\/span><\/p>\n<h2><span class=\"ez-toc-section\" id=\"NGINX_ile_Yaygin_Kullanim_Senaryolari\"><\/span><strong>NGINX ile Yayg\u0131n Kullan\u0131m Senaryolar\u0131<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">NGINX yap\u0131land\u0131rmas\u0131 a\u015fa\u011f\u0131daki \u00f6rneklerden biri veya birka\u00e7\u0131 i\u00e7in yap\u0131land\u0131r\u0131labilir:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Web sunucusu<\/b><span style=\"font-weight: 400;\"> \u2013 Performans ve \u00f6l\u00e7eklenebilirlik avantaj\u0131 sayesinde en yayg\u0131n kullan\u0131m \u015feklidir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Reverse proxy sunucusu<\/b><span style=\"font-weight: 400;\"> \u2013 \u0130stemciden gelen iste\u011fi uygun arka u\u00e7 (back-end) sunucusuna y\u00f6nlendirir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Y\u00fck dengeleyici<\/b><span style=\"font-weight: 400;\"> \u2013 A\u011f trafi\u011fini manuel m\u00fcdahale olmadan otomatik \u015fekilde da\u011f\u0131t\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>API Gateway<\/b><span style=\"font-weight: 400;\"> \u2013 \u0130stek y\u00f6nlendirme, kimlik do\u011frulama ve hata y\u00f6netimi i\u00e7in kullan\u0131l\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Web uygulamas\u0131 g\u00fcvenlik duvar\u0131<\/b><span style=\"font-weight: 400;\"> \u2013 Gelen ve giden a\u011f isteklerini filtreleyerek uygulamay\u0131 korur.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>\u00d6nbellek<\/b><span style=\"font-weight: 400;\"> \u2013 Verileri saklayarak sonraki isteklerde daha h\u0131zl\u0131 eri\u015fim sa\u011flar.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>DDoS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 koruma<\/b><span style=\"font-weight: 400;\"> \u2013 Da\u011f\u0131t\u0131lm\u0131\u015f hizmet engelleme sald\u0131r\u0131lar\u0131na kar\u015f\u0131 g\u00fcvenlik sa\u011flar.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Kubernetes (K8s)<\/b><span style=\"font-weight: 400;\"> \u2013 Konteynerle\u015ftirilmi\u015f uygulamalar\u0131n da\u011f\u0131t\u0131m\u0131n\u0131, \u00f6l\u00e7eklendirilmesini ve y\u00f6netimini otomatik hale getirir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Sidecar proxy<\/b><span style=\"font-weight: 400;\"> \u2013 Yan\u0131nda \u00e7al\u0131\u015ft\u0131\u011f\u0131 konteynere gelen ve giden trafi\u011fi y\u00f6nlendirir.<\/span><\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"NGINX_Avantajlari_ve_Dezavantajlari\"><\/span><strong>NGINX Avantajlar\u0131 ve Dezavantajlar\u0131<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Ba\u015fl\u0131ca NGNIX avantajlar\u0131 a\u015fa\u011f\u0131daki \u015fekildedir<\/span><b>:<\/b><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Y\u00fcksek Performans ve \u00d6l\u00e7eklenebilirlik: Event-driven mimarisi sayesinde \u00e7ok say\u0131da e\u015fzamanl\u0131 ba\u011flant\u0131y\u0131 d\u00fc\u015f\u00fck kaynak kullan\u0131m\u0131 ile i\u015fleyebilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">D\u00fc\u015f\u00fck Bellek T\u00fcketimi: NGINX, belle\u011fi verimli kullan\u0131r ve sistem kaynaklar\u0131n\u0131 az t\u00fcketir, bu da \u00f6zellikle d\u00fc\u015f\u00fck donan\u0131ml\u0131 sunucularda performans\u0131 art\u0131r\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Statik \u0130\u00e7erik Sunumunda \u00dcst\u00fcnl\u00fck: G\u00f6rseller, CSS, JavaScript gibi statik dosyalar\u0131 h\u0131zl\u0131 bir \u015fekilde sunar.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Y\u00fck Dengeleme ve Ters Proxy: Do\u011fal olarak y\u00fck dengeleme ve ters proxy \u00f6zelliklerine sahiptir, bu da microservis yap\u0131lar\u0131 ve b\u00fcy\u00fck web uygulamalar\u0131 i\u00e7in olduk\u00e7a uygundur.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Geli\u015fmi\u015f SSL\/TLS Deste\u011fi: G\u00fcvenli ba\u011flant\u0131lar i\u00e7in geli\u015fmi\u015f SSL\/TLS deste\u011fi sunar.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">SEO\u2019ya Yard\u0131mc\u0131: HTTP\/2 gibi modern protokollar\u0131 destekleyerek web sitesi h\u0131z\u0131n\u0131 art\u0131r\u0131r, bu da SEO a\u00e7\u0131s\u0131ndan avantaj sa\u011flar.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Avantajlar\u0131na nazaran \u00f6ne \u00e7\u0131kan NGNIX dezavantajlar\u0131 a\u015fa\u011f\u0131dakilerdir:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">S\u0131n\u0131rl\u0131 Mod\u00fcl Deste\u011fi: Apache\u2019ye k\u0131yasla uzant\u0131 ve mod\u00fcl deste\u011fi daha s\u0131n\u0131rl\u0131d\u0131r, baz\u0131 \u00f6zel ihtiya\u00e7larda yeterli olmayabilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Yap\u0131land\u0131rma Karma\u015f\u0131kl\u0131\u011f\u0131: Konfig\u00fcrasyonu ve y\u00f6netimi Apache\u2019ye g\u00f6re biraz daha karma\u015f\u0131kt\u0131r, bu da yeni ba\u015flayanlar i\u00e7in zorluk yaratabilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Topluluk Deste\u011fi: Apache\u2019ye g\u00f6re daha k\u00fc\u00e7\u00fck bir kullan\u0131c\u0131 ve topluluk deste\u011fi vard\u0131r.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Dinamik \u0130\u00e7erik \u0130\u015fleme: PHP d\u0131\u015f\u0131ndaki baz\u0131 dinamik i\u00e7erik i\u015fleme kapasitesi Apache kadar g\u00fc\u00e7l\u00fc de\u011fildir, ancak PHP-FPM ile bu eksiklik giderilebilir.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">S\u0131n\u0131rl\u0131 Windows Deste\u011fi: Linux ve Unix sistemlerde \u00e7ok daha yayg\u0131n ve performansl\u0131 \u00e7al\u0131\u015f\u0131r, Windows deste\u011fi s\u0131n\u0131rl\u0131d\u0131r.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>NGINX Nedir? NGINX, a\u00e7\u0131k kaynakl\u0131 bir web sunucusu yaz\u0131l\u0131m\u0131d\u0131r ve ters proxy, y\u00fck dengeleme ile&#8230;<\/p>\n","protected":false},"author":1,"featured_media":1019,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1018","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-genel"],"_links":{"self":[{"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1018","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=1018"}],"version-history":[{"count":2,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1018\/revisions"}],"predecessor-version":[{"id":1021,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/posts\/1018\/revisions\/1021"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/media\/1019"}],"wp:attachment":[{"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=1018"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=1018"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/verimin.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=1018"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}