{"id":38246,"date":"2026-01-26T17:40:58","date_gmt":"2026-01-26T14:40:58","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=38246"},"modified":"2026-01-26T17:40:58","modified_gmt":"2026-01-26T14:40:58","slug":"apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/","title":{"rendered":"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma"},"content":{"rendered":"<p><body><\/p>\n<h2>Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma<\/h2>\n<h2>Giri\u015f<\/h2>\n<p>\u0130nternet d\u00fcnyas\u0131nda, web uygulamalar\u0131n\u0131n performans\u0131, g\u00fcvenli\u011fi ve \u00f6l\u00e7eklenebilirli\u011fi her zamankinden daha kritik hale gelmi\u015ftir. Bu hedeflere ula\u015fmak i\u00e7in kullan\u0131lan g\u00fc\u00e7l\u00fc ara\u00e7lardan biri de ters proxy sunucular\u0131d\u0131r. Ters proxy, istemcilerden gelen istekleri al\u0131p, bu istekleri arka u\u00e7taki ger\u00e7ek sunuculara (uygulama sunucular\u0131, API&#8217;ler, veritabanlar\u0131 vb.) y\u00f6nlendiren bir arac\u0131 g\u00f6revi g\u00f6r\u00fcr. Bu makalede, Apache web sunucusunu Debian 8 i\u015fletim sistemi \u00fczerinde <code>mod_proxy<\/code> mod\u00fcl\u00fc ile bir ters proxy olarak nas\u0131l yap\u0131land\u0131raca\u011f\u0131m\u0131z\u0131 ayr\u0131nt\u0131l\u0131 bir \u015fekilde inceleyece\u011fiz. Debian 8, kararl\u0131l\u0131\u011f\u0131 ve yayg\u0131n kullan\u0131m\u0131 nedeniyle bu t\u00fcr bir kurulum i\u00e7in uygun bir platform sunar.<\/p>\n<p>Apache&#8217;nin <code>mod_proxy<\/code> mod\u00fcl\u00fc, esnek ve g\u00fc\u00e7l\u00fc bir ters proxy \u00e7\u00f6z\u00fcm\u00fc sunar. Bu makale boyunca, temel bir ters proxy yap\u0131land\u0131rmas\u0131ndan ba\u015flayarak, y\u00fck dengeleme, SSL\/TLS \u015fifrelemesi, \u00f6nbellekleme gibi geli\u015fmi\u015f konulara kadar bir\u00e7ok farkl\u0131 senaryoyu ele alaca\u011f\u0131z. Amac\u0131m\u0131z, okuyucular\u0131n Apache&#8217;yi kullanarak kendi ters proxy \u00e7\u00f6z\u00fcmlerini g\u00fcvenli ve verimli bir \u015fekilde kurmalar\u0131na yard\u0131mc\u0131 olacak kapsaml\u0131 bir rehber sunmakt\u0131r.<\/p>\n<h2>Ters Proxy Nedir ve Neden Kullan\u0131l\u0131r?<\/h2>\n<p>Bir ters proxy, web sunucunuzun veya uygulama sunucular\u0131n\u0131z\u0131n \u00f6n\u00fcnde duran bir sunucudur. \u0130stemciler (web taray\u0131c\u0131lar\u0131, mobil uygulamalar vb.) do\u011frudan arka u\u00e7 sunucular\u0131yla ileti\u015fim kurmak yerine, t\u00fcm isteklerini ters proxy&#8217;ye g\u00f6nderirler. Ters proxy, bu istekleri al\u0131r, i\u015fler ve uygun arka u\u00e7 sunucular\u0131na iletir. Arka u\u00e7 sunucular\u0131ndan gelen yan\u0131tlar da yine ters proxy \u00fczerinden istemciye geri d\u00f6ner. Bu model, do\u011frudan proxy&#8217;nin (ileri proxy) tam tersidir; ileri proxy, istemcilerin d\u0131\u015f a\u011fa eri\u015fimini sa\u011flarken, ters proxy d\u0131\u015far\u0131dan gelen isteklerin i\u00e7 a\u011fdaki sunuculara eri\u015fimini y\u00f6netir.<\/p>\n<h3>Avantajlar\u0131<\/h3>\n<p>Ters proxy kullanman\u0131n bir\u00e7ok \u00f6nemli avantaj\u0131 vard\u0131r:<\/p>\n<p>*   <strong>G\u00fcvenlik:<\/strong> Ters proxy, arka u\u00e7 sunucular\u0131n\u0131n IP adreslerini ve i\u00e7 a\u011f yap\u0131s\u0131n\u0131 d\u0131\u015f d\u00fcnyaya kar\u015f\u0131 gizler. Bu, potansiyel sald\u0131rganlar\u0131n do\u011frudan arka u\u00e7 sunucular\u0131na eri\u015fmesini zorla\u015ft\u0131r\u0131r. Ayr\u0131ca, ters proxy \u00fczerinde g\u00fcvenlik duvar\u0131 kurallar\u0131, DDoS korumas\u0131 ve SSL sonland\u0131rma gibi g\u00fcvenlik \u00f6nlemleri uygulanabilir.<br \/>\n*   <strong>Y\u00fck Dengeleme:<\/strong> Gelen trafi\u011fi birden fazla arka u\u00e7 sunucusu aras\u0131nda da\u011f\u0131tarak, tek bir sunucunun a\u015f\u0131r\u0131 y\u00fcklenmesini \u00f6nler ve uygulaman\u0131n genel performans\u0131n\u0131 ve kullan\u0131labilirli\u011fini art\u0131r\u0131r. Bu, \u00f6zellikle y\u00fcksek trafikli web siteleri ve uygulamalar i\u00e7in hayati \u00f6neme sahiptir.<br \/>\n*   <strong>SSL\/TLS \u015eifrelemesi (SSL Sonland\u0131rma):<\/strong> Ters proxy, SSL\/TLS \u015fifrelemesini sonland\u0131rabilir. Bu, arka u\u00e7 sunucular\u0131n\u0131n \u015fifreleme\/\u015fifre \u00e7\u00f6zme y\u00fck\u00fcnden kurtulmas\u0131n\u0131 sa\u011flar, b\u00f6ylece daha fazla uygulama i\u015fi yapabilirler. Arka u\u00e7 ile ters proxy aras\u0131ndaki ileti\u015fim genellikle g\u00fcvenli bir i\u00e7 a\u011fda oldu\u011fu i\u00e7in HTTP olarak devam edebilir veya yine SSL ile \u015fifrelenebilir.<br \/>\n*   <strong>\u00d6nbellekleme (Caching):<\/strong> S\u0131k\u00e7a istenen i\u00e7erikleri \u00f6nbelle\u011fe alarak, arka u\u00e7 sunucular\u0131na olan istek say\u0131s\u0131n\u0131 azalt\u0131r ve yan\u0131t s\u00fcrelerini \u00f6nemli \u00f6l\u00e7\u00fcde h\u0131zland\u0131r\u0131r. Bu, bant geni\u015fli\u011fi kullan\u0131m\u0131n\u0131 da optimize eder.<br \/>\n*   <strong>Statik \u0130\u00e7erik Sunumu:<\/strong> Ters proxy, resimler, CSS dosyalar\u0131, JavaScript dosyalar\u0131 gibi statik i\u00e7erikleri do\u011frudan sunarak, arka u\u00e7 uygulama sunucular\u0131n\u0131n bu t\u00fcr isteklerle u\u011fra\u015fmas\u0131n\u0131 engeller ve kaynaklar\u0131n\u0131 dinamik i\u00e7erik \u00fcretimine ay\u0131rmas\u0131na olanak tan\u0131r.<br \/>\n*   <strong>URL Yeniden Yazma ve Y\u00f6nlendirme:<\/strong> Gelen isteklerin URL&#8217;lerini de\u011fi\u015ftirebilir veya belirli ko\u015fullara g\u00f6re farkl\u0131 arka u\u00e7 sunucular\u0131na y\u00f6nlendirebilir. Bu, karma\u015f\u0131k uygulama mimarileri veya API a\u011f ge\u00e7itleri i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<br \/>\n*   <strong>Bak\u0131m ve Kesintisizlik:<\/strong> Arka u\u00e7 sunucular\u0131ndan birini veya birka\u00e7\u0131n\u0131 bak\u0131m i\u00e7in \u00e7evrimd\u0131\u015f\u0131na al\u0131rken, ters proxy di\u011fer sunuculara trafi\u011fi y\u00f6nlendirmeye devam edebilir, b\u00f6ylece hizmet kesintisi minimuma iner.<\/p>\n<h2>\u00d6n Ko\u015fullar<\/h2>\n<p>Bu makaledeki ad\u0131mlar\u0131 uygulayabilmek i\u00e7in belirli \u00f6n ko\u015fullar\u0131n sa\u011flanm\u0131\u015f olmas\u0131 gerekmektedir.<\/p>\n<h3>Debian 8 Sunucusu<\/h3>\n<p>Bu rehber Debian 8 (Jessie) \u00fczerine odaklanm\u0131\u015ft\u0131r. Sunucunuzun g\u00fcncel oldu\u011fundan emin olun.<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade<\/code><\/pre>\n<h3>Apache Web Sunucusu<\/h3>\n<p>Apache web sunucusu kurulu olmal\u0131d\u0131r. E\u011fer kurulu de\u011filse, a\u015fa\u011f\u0131daki komutla kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt install apache2<\/code><\/pre>\n<h3>Y\u00f6netici Yetkileri<\/h3>\n<p>Komutlar\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in <code>sudo<\/code> yetkisine sahip bir kullan\u0131c\u0131ya veya <code>root<\/code> kullan\u0131c\u0131s\u0131na ihtiyac\u0131n\u0131z olacakt\u0131r.<\/p>\n<h3>Arka U\u00e7 Sunucu(lar)<\/h3>\n<p>Ters proxy&#8217;nin istekleri y\u00f6nlendirece\u011fi en az bir adet arka u\u00e7 sunucusuna (\u00f6rne\u011fin, Nginx, Node.js uygulamas\u0131, Python Flask uygulamas\u0131, PHP-FPM vb.) ihtiyac\u0131n\u0131z olacakt\u0131r. Bu sunucunun belirli bir IP adresi ve port \u00fczerinden eri\u015filebilir olmas\u0131 gerekmektedir. \u00d6rne\u011fin, <code>http:\/\/192.168.1.100:8080<\/code> adresinde \u00e7al\u0131\u015fan bir uygulama sunucunuz oldu\u011funu varsayal\u0131m.<\/p>\n<h2>Apache ve mod_proxy Kurulumu<\/h2>\n<p>Apache&#8217;yi kurduktan sonra, ters proxy i\u015flevselli\u011fi i\u00e7in gerekli mod\u00fclleri etkinle\u015ftirmemiz gerekmektedir.<\/p>\n<h3>Apache Kurulumu<\/h3>\n<p>Yukar\u0131da belirtildi\u011fi gibi, Apache&#8217;yi kurmak i\u00e7in basit\u00e7e <code>apt install apache2<\/code> komutunu kullanabilirsiniz. Kurulum tamamland\u0131ktan sonra Apache servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status apache2<\/code><\/pre>\n<p>E\u011fer \u00e7al\u0131\u015fm\u0131yorsa, ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start apache2<\/code><\/pre>\n<p>Ve sistem ba\u015flang\u0131c\u0131nda otomatik ba\u015flamas\u0131 i\u00e7in etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable apache2<\/code><\/pre>\n<h3>mod_proxy Mod\u00fcllerini Etkinle\u015ftirme<\/h3>\n<p>Apache&#8217;nin <code>mod_proxy<\/code> mod\u00fcl\u00fc, temel ters proxy i\u015flevselli\u011fini sa\u011flar. Ancak, farkl\u0131 protokoller (HTTP, HTTPS, AJP) ve geli\u015fmi\u015f \u00f6zellikler (y\u00fck dengeleme, \u00f6nbellekleme) i\u00e7in ek mod\u00fcller de gerekebilir.<\/p>\n<p>Temel HTTP ters proxy i\u00e7in a\u015fa\u011f\u0131daki mod\u00fclleri etkinle\u015ftirmemiz gerekir:<br \/>\n*   <code>mod_proxy<\/code>: Temel proxy i\u015flevselli\u011fini sa\u011flar.<br \/>\n*   <code>mod_proxy_http<\/code>: HTTP\/HTTPS protokolleri \u00fczerinden proxy yapmay\u0131 sa\u011flar.<\/p>\n<p>Bu mod\u00fclleri etkinle\u015ftirmek i\u00e7in <code>a2enmod<\/code> komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod proxy\nsudo a2enmod proxy_http<\/code><\/pre>\n<p>E\u011fer HTTPS (SSL\/TLS) trafi\u011fini proxy yapmak veya SSL sonland\u0131rma yapmak istiyorsan\u0131z, <code>mod_ssl<\/code> ve <code>mod_proxy_balancer<\/code> (y\u00fck dengeleme i\u00e7in) gibi mod\u00fcllere de ihtiyac\u0131n\u0131z olacakt\u0131r. \u015eimdilik sadece temel HTTP proxy i\u00e7in gerekli olanlar\u0131 etkinle\u015ftirelim.<\/p>\n<p>Mod\u00fclleri etkinle\u015ftirdikten sonra, de\u011fi\u015fikliklerin ge\u00e7erli olmas\u0131 i\u00e7in Apache servisini yeniden ba\u015flatmal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<h2>Temel Ters Proxy Yap\u0131land\u0131rmas\u0131<\/h2>\n<p>\u015eimdi, Apache&#8217;yi belirli bir alan ad\u0131 veya IP adresi i\u00e7in gelen istekleri arka u\u00e7 sunucusuna y\u00f6nlendirecek \u015fekilde yap\u0131land\u0131ral\u0131m. Bu genellikle bir sanal host (Virtual Host) dosyas\u0131 i\u00e7inde yap\u0131l\u0131r.<\/p>\n<h3>Sanal Host Olu\u015fturma<\/h3>\n<p>Apache&#8217;de sanal host yap\u0131land\u0131rmalar\u0131 genellikle <code>\/etc\/apache2\/sites-available\/<\/code> dizininde bulunur. Yeni bir yap\u0131land\u0131rma dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/reverse-proxy.conf<\/code><\/pre>\n<p>Bu dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki temel yap\u0131land\u0131rmay\u0131 ekleyece\u011fiz. Bu \u00f6rnekte, <code>proxy.example.com<\/code> alan ad\u0131na gelen t\u00fcm HTTP isteklerinin <code>http:\/\/192.168.1.100:8080<\/code> adresindeki arka u\u00e7 sunucusuna y\u00f6nlendirilece\u011fini varsay\u0131yoruz.<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerName proxy.example.com\n    ServerAdmin webmaster@example.com\n\n    # Proxy isteklerini arka u\u00e7 sunucusuna y\u00f6nlendir\n    ProxyPreserveHost On\n    ProxyRequests Off\n    ProxyPass \/ http:\/\/192.168.1.100:8080\/\n    ProxyPassReverse \/ http:\/\/192.168.1.100:8080\/\n\n    ErrorLog ${APACHE_LOG_DIR}\/reverse-proxy_error.log\n    CustomLog ${APACHE_LOG_DIR}\/reverse-proxy_access.log combined\n\n    <Directory \/>\n        Require all granted\n    <\/Directory>\n<\/VirtualHost><\/code><\/pre>\n<h3>ProxyPass ve ProxyPassReverse Direktifleri<\/h3>\n<p>Yukar\u0131daki yap\u0131land\u0131rmada kullan\u0131lan temel direktifleri a\u00e7\u0131klayal\u0131m:<\/p>\n<p>*   <strong><code>ProxyPreserveHost On<\/code><\/strong>: Bu direktif, istemciden gelen <code>Host<\/code> ba\u015fl\u0131\u011f\u0131n\u0131 arka u\u00e7 sunucusuna aynen iletmek i\u00e7in kullan\u0131l\u0131r. Bu, arka u\u00e7 uygulamas\u0131n\u0131n birden fazla alan ad\u0131n\u0131 bar\u0131nd\u0131r\u0131yorsa veya <code>Host<\/code> ba\u015fl\u0131\u011f\u0131na dayal\u0131 kararlar al\u0131yorsa \u00f6nemlidir.<br \/>\n*   <strong><code>ProxyRequests Off<\/code><\/strong>: Bu direktif \u00e7ok \u00f6nemlidir. Apache&#8217;nin bir ileri proxy (forward proxy) olarak \u00e7al\u0131\u015fmas\u0131n\u0131 engeller. Bir ters proxy olarak \u00e7al\u0131\u015f\u0131rken, Apache&#8217;nin sadece belirli, \u00f6nceden tan\u0131mlanm\u0131\u015f arka u\u00e7 sunucular\u0131na istekleri y\u00f6nlendirmesi istenir, rastgele d\u0131\u015f adreslere de\u011fil. G\u00fcvenlik a\u00e7\u0131\u011f\u0131 olu\u015fmamas\u0131 i\u00e7in her zaman <code>Off<\/code> olarak ayarlanmal\u0131d\u0131r.<br \/>\n*   <strong><code>ProxyPass [path] [url]<\/code><\/strong>: Bu direktif, belirli bir URL yoluna gelen istekleri belirtilen arka u\u00e7 URL&#8217;sine y\u00f6nlendirir.<br \/>\n    *   <code>ProxyPass \/ http:\/\/192.168.1.100:8080\/<\/code> \u00f6rne\u011finde, ters proxy&#8217;ye gelen t\u00fcm istekler (<code>\/<\/code> ile ba\u015flayanlar) <code>http:\/\/192.168.1.100:8080\/<\/code> adresine y\u00f6nlendirilecektir. \u00d6rne\u011fin, <code>proxy.example.com\/app\/page<\/code> iste\u011fi, arka u\u00e7ta <code>192.168.1.100:8080\/app\/page<\/code> olarak i\u015flenecektir.<br \/>\n*   <strong><code>ProxyPassReverse [path] [url]<\/code><\/strong>: Bu direktif, arka u\u00e7 sunucusundan gelen HTTP yan\u0131t ba\u015fl\u0131klar\u0131ndaki (\u00f6zellikle <code>Location<\/code>, <code>Content-Location<\/code>, <code>URI<\/code> gibi ba\u015fl\u0131klar) y\u00f6nlendirme URL&#8217;lerini yeniden yazar. Bu, arka u\u00e7 sunucusu bir y\u00f6nlendirme (redirect) g\u00f6nderdi\u011finde, istemcinin do\u011frudan arka u\u00e7 sunucusuna y\u00f6nlendirilmek yerine, ters proxy \u00fczerinden y\u00f6nlendirilmesini sa\u011flar. Bu, istemcinin arka u\u00e7 sunucusunun varl\u0131\u011f\u0131ndan haberdar olmamas\u0131n\u0131 ve her zaman ters proxy ile ileti\u015fim kurmas\u0131n\u0131 garanti eder.<\/p>\n<h3>\u00d6rnek Yap\u0131land\u0131rma<\/h3>\n<p>Yukar\u0131daki sanal host dosyas\u0131n\u0131 kaydettikten sonra, bu yap\u0131land\u0131rmay\u0131 etkinle\u015ftirmemiz gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite reverse-proxy.conf<\/code><\/pre>\n<p>Yap\u0131land\u0131rma dosyas\u0131nda herhangi bir s\u00f6zdizimi hatas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek iyi bir uygulamad\u0131r:<\/p>\n<pre><code class=\"language-bash\">sudo apache2ctl configtest<\/code><\/pre>\n<p>E\u011fer \u00e7\u0131kt\u0131 <code>Syntax OK<\/code> ise, Apache servisini yeniden ba\u015flatarak de\u011fi\u015fiklikleri uygulayabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<p>\u015eimdi, DNS kay\u0131tlar\u0131n\u0131zda <code>proxy.example.com<\/code> alan ad\u0131n\u0131 ters proxy sunucunuzun IP adresine i\u015faret etti\u011finizden emin olun. Ard\u0131ndan, bir web taray\u0131c\u0131s\u0131ndan <code>http:\/\/proxy.example.com<\/code> adresine gitti\u011finizde, arka u\u00e7 sunucunuzdaki uygulaman\u0131n i\u00e7eri\u011fini g\u00f6rmelisiniz.<\/p>\n<h2>Geli\u015fmi\u015f Ters Proxy Yap\u0131land\u0131rmalar\u0131<\/h2>\n<p>Temel bir ters proxy kurduktan sonra, Apache&#8217;nin <code>mod_proxy<\/code> mod\u00fcl\u00fcn\u00fcn sundu\u011fu geli\u015fmi\u015f \u00f6zelliklere g\u00f6z atal\u0131m. Bu \u00f6zellikler, uygulaman\u0131z\u0131n performans\u0131n\u0131, g\u00fcvenli\u011fini ve dayan\u0131kl\u0131l\u0131\u011f\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir.<\/p>\n<h3>Y\u00fck Dengeleme<\/h3>\n<p>Y\u00fck dengeleme, gelen trafi\u011fi birden fazla arka u\u00e7 sunucusu aras\u0131nda da\u011f\u0131tarak uygulaman\u0131n \u00f6l\u00e7eklenebilirli\u011fini ve kullan\u0131labilirli\u011fini art\u0131rman\u0131n kritik bir yoludur. Apache, <code>mod_proxy_balancer<\/code> mod\u00fcl\u00fc ile g\u00fc\u00e7l\u00fc y\u00fck dengeleme yetenekleri sunar.<\/p>\n<h4>Proxy Balancer Manager<\/h4>\n<p>Y\u00fck dengeleme i\u00e7in \u00f6ncelikle <code>mod_proxy_balancer<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmemiz gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod proxy_balancer\nsudo a2enmod lbmethod_byrequests # veya lbmethod_bytraffic, lbmethod_bybusyness\nsudo systemctl restart apache2<\/code><\/pre>\n<p><code>lbmethod_byrequests<\/code> (varsay\u0131lan), istek say\u0131s\u0131na g\u00f6re y\u00fck dengeleme yapar. Di\u011fer y\u00f6ntemler de mevcuttur.<\/p>\n<p>\u015eimdi sanal host dosyam\u0131z\u0131 g\u00fcncelleyerek bir y\u00fck dengeleyici k\u00fcmesi tan\u0131mlayal\u0131m. Bu \u00f6rnekte, <code>http:\/\/192.168.1.100:8080<\/code> ve <code>http:\/\/192.168.1.101:8080<\/code> adreslerinde \u00e7al\u0131\u015fan iki arka u\u00e7 sunucumuz oldu\u011funu varsayal\u0131m.<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerName balancer.example.com\n    ServerAdmin webmaster@example.com\n\n    ProxyRequests Off\n    ProxyPreserveHost On\n\n    <Proxy balancer:\/\/mycluster>\n        BalancerMember http:\/\/192.168.1.100:8080 route=server1\n        BalancerMember http:\/\/192.168.1.101:8080 route=server2\n        ProxySet lbmethod=byrequests\n        # Session sabitleme (sticky sessions) i\u00e7in\n        # ProxySet stickysession=JSESSIONID\n    <\/Proxy>\n\n    ProxyPass \/ balancer:\/\/mycluster\/\n    ProxyPassReverse \/ balancer:\/\/mycluster\/\n\n    # Balancer Manager aray\u00fcz\u00fc (iste\u011fe ba\u011fl\u0131, sadece test ve izleme i\u00e7in)\n    <Location \/balancer-manager>\n        SetHandler balancer-manager\n        Require ip 127.0.0.1 # Sadece yerel eri\u015fime izin ver\n        # Require all granted # T\u00fcm eri\u015fime izin ver (g\u00fcvenlik riski)\n    <\/Location>\n\n    ErrorLog ${APACHE_LOG_DIR}\/balancer_error.log\n    CustomLog ${APACHE_LOG_DIR}\/balancer_access.log combined\n<\/VirtualHost><\/code><\/pre>\n<p>*   <strong><code><Proxy balancer:\/\/mycluster><\/code><\/strong>: Bu blok, <code>mycluster<\/code> ad\u0131nda bir y\u00fck dengeleyici k\u00fcmesi tan\u0131mlar.<br \/>\n*   <strong><code>BalancerMember<\/code><\/strong>: Bu direktif, k\u00fcmeye dahil edilecek arka u\u00e7 sunucular\u0131n\u0131 belirtir. <code>route<\/code> parametresi, oturum sabitleme (sticky sessions) i\u00e7in kullan\u0131labilir.<br \/>\n*   <strong><code>ProxySet lbmethod=byrequests<\/code><\/strong>: Y\u00fck dengeleme algoritmas\u0131n\u0131 belirtir (istek say\u0131s\u0131na g\u00f6re).<br \/>\n*   <strong><code>ProxyPass \/ balancer:\/\/mycluster\/<\/code><\/strong>: Gelen istekleri tan\u0131mlad\u0131\u011f\u0131m\u0131z y\u00fck dengeleyici k\u00fcmesine y\u00f6nlendirir.<br \/>\n*   <strong><code><Location \/balancer-manager><\/code><\/strong>: \u0130ste\u011fe ba\u011fl\u0131 olarak, <code>\/balancer-manager<\/code> URL&#8217;si \u00fczerinden y\u00fck dengeleyici durumunu izleyebilece\u011finiz bir aray\u00fcz sa\u011flar. G\u00fcvenlik nedeniyle eri\u015fimi k\u0131s\u0131tlamay\u0131 unutmay\u0131n.<\/p>\n<p>Yap\u0131land\u0131rmay\u0131 kaydettikten sonra, sanal host&#8217;u etkinle\u015ftirin ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite balancer.example.com.conf\nsudo apache2ctl configtest\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Art\u0131k <code>balancer.example.com<\/code> adresine gelen istekler, tan\u0131mlad\u0131\u011f\u0131n\u0131z iki arka u\u00e7 sunucusu aras\u0131nda dengeli bir \u015fekilde da\u011f\u0131t\u0131lacakt\u0131r.<\/p>\n<h3>SSL\/TLS \u015eifrelemesi<\/h3>\n<p>G\u00fcn\u00fcm\u00fczde web sitelerinin HTTPS kullanmas\u0131 bir standart haline gelmi\u015ftir. Apache, <code>mod_ssl<\/code> mod\u00fcl\u00fc ile SSL\/TLS \u015fifrelemesini kolayca yap\u0131land\u0131rabilir. Ters proxy \u00fczerinde SSL sonland\u0131rma yapmak, arka u\u00e7 sunucular\u0131n\u0131n y\u00fck\u00fcn\u00fc azaltman\u0131n yayg\u0131n bir yoludur.<\/p>\n<h4>mod_ssl Kurulumu ve Etkinle\u015ftirilmesi<\/h4>\n<p>\u00d6ncelikle <code>mod_ssl<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmemiz gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod ssl\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Ayr\u0131ca, bir SSL sertifikas\u0131na ve \u00f6zel anahtara ihtiyac\u0131n\u0131z olacakt\u0131r. Let&#8217;s Encrypt gibi hizmetlerden \u00fccretsiz sertifikalar alabilir veya kendi kendinize imzal\u0131 bir sertifika olu\u015fturabilirsiniz (test ortamlar\u0131 i\u00e7in). Sertifika dosyalar\u0131n\u0131z\u0131 <code>\/etc\/ssl\/certs\/<\/code> ve <code>\/etc\/ssl\/private\/<\/code> gibi g\u00fcvenli bir dizine yerle\u015ftirdi\u011finizden emin olun.<\/p>\n<h4>SSL Destekli Ters Proxy Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>Yeni bir sanal host dosyas\u0131 olu\u015ftural\u0131m veya mevcut olan\u0131 g\u00fcncelleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/secure-reverse-proxy.conf<\/code><\/pre>\n<pre><code class=\"language-apache\"><VirtualHost *:443>\n    ServerName secure.example.com\n    ServerAdmin webmaster@example.com\n\n    SSLEngine On\n    SSLCertificateFile \/etc\/ssl\/certs\/your_domain.crt\n    SSLCertificateKeyFile \/etc\/ssl\/private\/your_domain.key\n    # SSLCertificateChainFile \/etc\/ssl\/certs\/chain.pem # E\u011fer varsa\n\n    # Gelen HTTPS isteklerini arka u\u00e7 sunucusuna HTTP olarak y\u00f6nlendir (SSL sonland\u0131rma)\n    ProxyPreserveHost On\n    ProxyRequests Off\n    ProxyPass \/ http:\/\/192.168.1.100:8080\/\n    ProxyPassReverse \/ http:\/\/192.168.1.100:8080\/\n\n    # Arka u\u00e7 da HTTPS kullan\u0131yorsa\n    # ProxyPass \/ https:\/\/192.168.1.100:8443\/\n    # ProxyPassReverse \/ https:\/\/192.168.1.100:8443\/\n    # SSLProxyEngine On # Arka uca HTTPS ile ba\u011flanmak i\u00e7in\n\n    ErrorLog ${APACHE_LOG_DIR}\/secure_proxy_error.log\n    CustomLog ${APACHE_LOG_DIR}\/secure_proxy_access.log combined\n<\/VirtualHost>\n\n<h2>\u0130ste\u011fe ba\u011fl\u0131: HTTP'den HTTPS'ye y\u00f6nlendirme<\/h2>\n<VirtualHost *:80>\n    ServerName secure.example.com\n    Redirect permanent \/ https:\/\/secure.example.com\/\n<\/VirtualHost><\/code><\/pre>\n<p>*   <strong><code>SSLEngine On<\/code><\/strong>: SSL\/TLS motorunu etkinle\u015ftirir.<br \/>\n*   <strong><code>SSLCertificateFile<\/code><\/strong>: SSL sertifika dosyas\u0131n\u0131n yolunu belirtir.<br \/>\n*   <strong><code>SSLCertificateKeyFile<\/code><\/strong>: \u00d6zel anahtar dosyas\u0131n\u0131n yolunu belirtir.<br \/>\n*   <strong><code>ProxyPass \/ http:\/\/...<\/code><\/strong>: Bu durumda, istemci ile ters proxy aras\u0131ndaki ileti\u015fim HTTPS iken, ters proxy ile arka u\u00e7 aras\u0131ndaki ileti\u015fim HTTP olarak ger\u00e7ekle\u015fir. Bu, &#8220;SSL sonland\u0131rma&#8221; olarak bilinir.<br \/>\n*   <strong><code>SSLProxyEngine On<\/code><\/strong>: E\u011fer arka u\u00e7 sunucusuna da HTTPS \u00fczerinden ba\u011flanmak istiyorsan\u0131z, bu direktifi etkinle\u015ftirmeniz gerekir.<\/p>\n<p>Yap\u0131land\u0131rmay\u0131 etkinle\u015ftirin ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite secure-reverse-proxy.conf\nsudo apache2ctl configtest\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Art\u0131k <code>https:\/\/secure.example.com<\/code> adresine gelen istekler \u015fifrelenmi\u015f olarak ters proxy&#8217;ye ula\u015facak ve oradan arka u\u00e7 sunucusuna y\u00f6nlendirilecektir.<\/p>\n<h3>\u00d6nbellekleme<\/h3>\n<p>Ters proxy, s\u0131k\u00e7a istenen i\u00e7erikleri \u00f6nbelle\u011fe alarak arka u\u00e7 sunucular\u0131n\u0131n y\u00fck\u00fcn\u00fc azaltabilir ve yan\u0131t s\u00fcrelerini iyile\u015ftirebilir. Apache, <code>mod_cache<\/code> ve <code>mod_disk_cache<\/code> mod\u00fclleri ile \u00f6nbellekleme yetenekleri sunar.<\/p>\n<h4>mod_cache ve mod_disk_cache<\/h4>\n<p>\u00d6nbellekleme mod\u00fcllerini etkinle\u015ftirelim:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod cache\nsudo a2enmod cache_disk\nsudo systemctl restart apache2<\/code><\/pre>\n<h4>\u00d6nbellekleme Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>\u00d6nbellekleme i\u00e7in ayr\u0131 bir yap\u0131land\u0131rma dosyas\u0131 olu\u015fturmak daha d\u00fczenli olabilir:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/conf-available\/cache.conf<\/code><\/pre>\n<pre><code class=\"language-apache\"><IfModule mod_cache.c>\n    <IfModule mod_disk_cache.c>\n        CacheRoot \/var\/cache\/apache2\/mod_disk_cache\n        CacheDirLevels 2\n        CacheDirLength 1\n        CacheMaxFileSize 10000000 # 10MB\n        CacheMinFileSize 1000 # 1KB\n        CacheGcInterval 4 # 4 saatte bir temizlik\n        CacheLockPath \/var\/run\/apache2\/mod_cache-lock\n        CacheLockMaxAge 5 # Saniye\n\n        # Proxy cache'i etkinle\u015ftir\n        CacheEnable disk \/\n        CacheHeader on\n    <\/IfModule>\n<\/IfModule><\/code><\/pre>\n<p>*   <strong><code>CacheRoot<\/code><\/strong>: \u00d6nbellek dosyalar\u0131n\u0131n depolanaca\u011f\u0131 dizin. Bu dizinin Apache kullan\u0131c\u0131s\u0131 taraf\u0131ndan yaz\u0131labilir oldu\u011fundan emin olun (<code>www-data<\/code>).<br \/>\n*   <strong><code>CacheDirLevels<\/code><\/strong>, <strong><code>CacheDirLength<\/code><\/strong>: \u00d6nbellek dizin yap\u0131s\u0131n\u0131 tan\u0131mlar.<br \/>\n*   <strong><code>CacheMaxFileSize<\/code><\/strong>, <strong><code>CacheMinFileSize<\/code><\/strong>: \u00d6nbelle\u011fe al\u0131nacak dosyalar\u0131n boyut limitleri.<br \/>\n*   <strong><code>CacheGcInterval<\/code><\/strong>: \u00d6nbellek temizleme aral\u0131\u011f\u0131.<br \/>\n*   <strong><code>CacheEnable disk \/<\/code><\/strong>: K\u00f6k dizinden itibaren t\u00fcm i\u00e7eri\u011fi disk \u00fczerinde \u00f6nbelle\u011fe almay\u0131 etkinle\u015ftirir.<\/p>\n<p>Bu yap\u0131land\u0131rma dosyas\u0131n\u0131 etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo a2enconf cache.conf\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Ard\u0131ndan, sanal host dosyan\u0131zda \u00f6nbellekleme ayarlar\u0131n\u0131 kullanabilirsiniz. Genellikle <code>ProxyPass<\/code> direktiflerinin oldu\u011fu blokta <code>CacheEnable<\/code> veya <code>CacheDisable<\/code> ile kontrol edersiniz. Varsay\u0131lan olarak, yukar\u0131daki <code>cache.conf<\/code> etkinle\u015ftirildi\u011finde, t\u00fcm proxy edilen i\u00e7erik \u00f6nbelle\u011fe al\u0131nmaya \u00e7al\u0131\u015f\u0131lacakt\u0131r. Uygulaman\u0131z\u0131n yan\u0131t ba\u015fl\u0131klar\u0131nda (\u00f6rn. <code>Cache-Control<\/code>, <code>Expires<\/code>) \u00f6nbellekleme politikalar\u0131n\u0131 do\u011fru bir \u015fekilde ayarlad\u0131\u011f\u0131n\u0131zdan emin olun.<\/p>\n<h3>Kimlik Do\u011frulama ve Yetkilendirme<\/h3>\n<p>Ters proxy, arka u\u00e7 sunucular\u0131na ula\u015fmadan \u00f6nce istemcilerin kimli\u011fini do\u011frulamak veya yetkilendirmek i\u00e7in kullan\u0131labilir. Apache&#8217;nin <code>mod_auth_basic<\/code>, <code>mod_authz_core<\/code> gibi mod\u00fclleri ile bu m\u00fcmk\u00fcn olabilir.<\/p>\n<p>\u00d6rne\u011fin, belirli bir URL yoluna eri\u015fimi kullan\u0131c\u0131 ad\u0131\/\u015fifre ile k\u0131s\u0131tlayabilirsiniz:<\/p>\n<pre><code class=\"language-apache\"><Location \/admin>\n    AuthType Basic\n    AuthName \"Restricted Area\"\n    AuthUserFile \/etc\/apache2\/.htpasswd\n    Require valid-user\n    ProxyPass http:\/\/192.168.1.100:8080\/admin\n    ProxyPassReverse http:\/\/192.168.1.100:8080\/admin\n<\/Location><\/code><\/pre>\n<p><code>htpasswd<\/code> dosyas\u0131 olu\u015fturmay\u0131 unutmay\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo htpasswd -c \/etc\/apache2\/.htpasswd adminuser<\/code><\/pre>\n<h3>URL Yeniden Yazma<\/h3>\n<p><code>mod_rewrite<\/code> mod\u00fcl\u00fc, gelen URL&#8217;leri arka u\u00e7 sunucusuna y\u00f6nlendirmeden \u00f6nce yeniden yazmak i\u00e7in kullan\u0131labilir. Bu, karma\u015f\u0131k URL yap\u0131lar\u0131n\u0131 basitle\u015ftirmek veya eski URL&#8217;leri yeni bir yap\u0131ya e\u015flemek i\u00e7in faydal\u0131d\u0131r.<\/p>\n<p><code>mod_rewrite<\/code>&#8216;\u0131 etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod rewrite\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Sanal host dosyan\u0131zda RewriteRule kullanabilirsiniz:<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerName rewrite.example.com\n\n    RewriteEngine On\n    RewriteRule ^\/old-path\/(.*)$ \/new-path\/$1 [P,L]\n\n    ProxyPass \/new-path\/ http:\/\/192.168.1.100:8080\/new-path\/\n    ProxyPassReverse \/new-path\/ http:\/\/192.168.1.100:8080\/new-path\/\n<\/VirtualHost><\/code><\/pre>\n<p>Burada, <code>\/old-path\/<\/code> ile ba\u015flayan t\u00fcm istekler, arka u\u00e7 sunucusuna <code>\/new-path\/<\/code> olarak y\u00f6nlendirilmeden \u00f6nce yeniden yaz\u0131l\u0131r. <code>[P]<\/code> bayra\u011f\u0131, <code>mod_proxy<\/code>&#8216;ye iste\u011fi proxy etmesini s\u00f6yler.<\/p>\n<h2>Sorun Giderme ve Yayg\u0131n Hatalar<\/h2>\n<p>Ters proxy yap\u0131land\u0131rmas\u0131 yaparken baz\u0131 sorunlarla kar\u015f\u0131la\u015fmak do\u011fald\u0131r. \u0130\u015fte yayg\u0131n sorunlar ve \u00e7\u00f6z\u00fcm ipu\u00e7lar\u0131:<\/p>\n<h3>Proxy Hatalar\u0131<\/h3>\n<p>*   <strong>503 Service Unavailable:<\/strong> Bu genellikle arka u\u00e7 sunucusunun \u00e7al\u0131\u015fmad\u0131\u011f\u0131, ula\u015f\u0131lamad\u0131\u011f\u0131 veya isteklere yan\u0131t vermedi\u011fi anlam\u0131na gelir. Arka u\u00e7 sunucunuzun durumunu, IP adresini ve portunu kontrol edin. A\u011f ba\u011flant\u0131s\u0131n\u0131 test edin (\u00f6rne\u011fin, <code>curl http:\/\/192.168.1.100:8080<\/code>).<br \/>\n*   <strong>404 Not Found:<\/strong> Ters proxy iste\u011fi arka uca iletmi\u015f, ancak arka u\u00e7 sunucusu istenen kayna\u011f\u0131 bulamam\u0131\u015ft\u0131r. Arka u\u00e7 uygulaman\u0131z\u0131n URL yollar\u0131n\u0131 ve yap\u0131land\u0131rmas\u0131n\u0131 kontrol edin. <code>ProxyPass<\/code> direktifindeki yollar\u0131n do\u011fru oldu\u011fundan emin olun.<br \/>\n*   <strong>403 Forbidden:<\/strong> Arka u\u00e7 sunucusu iste\u011fi reddetmi\u015f olabilir. Arka u\u00e7 sunucusunun g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 veya uygulama izinlerini kontrol edin. Apache yap\u0131land\u0131rman\u0131zda <code>Require all granted<\/code> gibi direktiflerin do\u011fru yerde ve do\u011fru \u015fekilde kullan\u0131ld\u0131\u011f\u0131ndan emin olun.<br \/>\n*   <strong>Sonsuz Y\u00f6nlendirme D\u00f6ng\u00fcs\u00fc:<\/strong> \u00d6zellikle HTTP&#8217;den HTTPS&#8217;ye y\u00f6nlendirme veya URL yeniden yazma kurallar\u0131 kullan\u0131rken olu\u015fabilir. <code>ProxyPassReverse<\/code> direktifinin do\u011fru kullan\u0131ld\u0131\u011f\u0131ndan emin olun.<\/p>\n<h3>Log Kay\u0131tlar\u0131<\/h3>\n<p>Apache&#8217;nin log dosyalar\u0131 sorun giderme i\u00e7in en de\u011ferli ara\u00e7lard\u0131r:<br \/>\n*   <strong>Eri\u015fim Loglar\u0131 (<code>access.log<\/code>):<\/strong> <code>\/var\/log\/apache2\/access.log<\/code> veya sanal host&#8217;unuz i\u00e7in tan\u0131mlad\u0131\u011f\u0131n\u0131z \u00f6zel eri\u015fim loglar\u0131. \u0130stemciden gelen istekleri ve Apache&#8217;nin bunlara nas\u0131l yan\u0131t verdi\u011fini g\u00f6sterir.<br \/>\n*   <strong>Hata Loglar\u0131 (<code>error.log<\/code>):<\/strong> <code>\/var\/log\/apache2\/error.log<\/code> veya sanal host&#8217;unuz i\u00e7in tan\u0131mlad\u0131\u011f\u0131n\u0131z \u00f6zel hata loglar\u0131. Apache&#8217;nin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 t\u00fcm hatalar\u0131 ve uyar\u0131lar\u0131 i\u00e7erir. <code>mod_proxy<\/code> ile ilgili sorunlar genellikle burada g\u00f6r\u00fcn\u00fcr. Arka u\u00e7 sunucusuna ba\u011flan\u0131lamamas\u0131, zaman a\u015f\u0131m\u0131 gibi hatalar bu loglarda yer al\u0131r.<\/p>\n<p>Sorun giderirken <code>tail -f \/var\/log\/apache2\/error.log<\/code> komutuyla loglar\u0131 canl\u0131 olarak izlemek \u00e7ok faydal\u0131d\u0131r.<\/p>\n<h3>G\u00fcvenlik Konular\u0131<\/h3>\n<p>*   <strong><code>ProxyRequests Off<\/code><\/strong>: Bu direktifi her zaman <code>Off<\/code> olarak ayarlay\u0131n. Aksi takdirde, Apache bir a\u00e7\u0131k ileri proxy (open forward proxy) haline gelir ve k\u00f6t\u00fcye kullan\u0131labilir.<br \/>\n*   <strong><code>ProxyPreserveHost On<\/code><\/strong>: Bu, arka uca do\u011fru <code>Host<\/code> ba\u015fl\u0131\u011f\u0131n\u0131 iletir, ancak baz\u0131 g\u00fcvenlik taray\u0131c\u0131lar\u0131 bunu bir bilgi if\u015fas\u0131 olarak i\u015faretleyebilir. Uygulaman\u0131z\u0131n buna ihtiyac\u0131 yoksa <code>Off<\/code> b\u0131rakmay\u0131 d\u00fc\u015f\u00fcnebilirsiniz.<br \/>\n*   <strong>Arka U\u00e7 G\u00fcvenli\u011fi<\/strong>: Ters proxy, arka u\u00e7 sunucular\u0131n\u0131 d\u0131\u015f d\u00fcnyaya kar\u015f\u0131 gizlese de, arka u\u00e7 sunucular\u0131n\u0131n kendilerinin de g\u00fcvenli olmas\u0131 gerekir. G\u00fcvenlik duvarlar\u0131, g\u00fcncel yaz\u0131l\u0131mlar ve g\u00fc\u00e7l\u00fc kimlik do\u011frulama mekanizmalar\u0131 kullan\u0131n.<br \/>\n*   <strong>SSL\/TLS Yap\u0131land\u0131rmas\u0131<\/strong>: G\u00fcvenli TLS protokolleri (TLSv1.2, TLSv1.3) ve g\u00fc\u00e7l\u00fc \u015fifreleme s\u00fcitleri kulland\u0131\u011f\u0131n\u0131zdan emin olun. Eski ve zay\u0131f protokolleri devre d\u0131\u015f\u0131 b\u0131rak\u0131n.<br \/>\n*   <strong>Y\u00f6netim Aray\u00fczleri<\/strong>: <code>balancer-manager<\/code> gibi y\u00f6netim aray\u00fczlerine eri\u015fimi sadece g\u00fcvenilir IP adresleriyle s\u0131n\u0131rlay\u0131n.<\/p>\n<h2>Sonu\u00e7<\/h2>\n<p>Apache&#8217;yi <code>mod_proxy<\/code> ile bir ters proxy olarak yap\u0131land\u0131rmak, web uygulamalar\u0131n\u0131z\u0131n performans\u0131n\u0131, g\u00fcvenli\u011fini ve \u00f6l\u00e7eklenebilirli\u011fini art\u0131rmak i\u00e7in g\u00fc\u00e7l\u00fc ve esnek bir \u00e7\u00f6z\u00fcmd\u00fcr. Debian 8 \u00fczerinde ad\u0131m ad\u0131m ilerledi\u011fimiz bu rehberde, temel bir ters proxy kurulumundan ba\u015flayarak, y\u00fck dengeleme, SSL sonland\u0131rma, \u00f6nbellekleme ve URL yeniden yazma gibi geli\u015fmi\u015f konulara de\u011findik.<\/p>\n<p>Do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda, bir ters proxy, arka u\u00e7 sunucular\u0131n\u0131z\u0131n y\u00fck\u00fcn\u00fc azalt\u0131r, potansiyel g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 gizler ve kullan\u0131c\u0131 deneyimini iyile\u015ftirir. Unutmay\u0131n ki her yap\u0131land\u0131rma senaryosu benzersizdir ve kendi \u00f6zel ihtiya\u00e7lar\u0131n\u0131za g\u00f6re ayarlamalar yapman\u0131z gerekebilir. Her zaman test ortam\u0131n\u0131zda de\u011fi\u015fiklikleri deneyin, log dosyalar\u0131n\u0131 dikkatlice izleyin ve g\u00fcvenlik en iyi uygulamalar\u0131n\u0131 takip edin. Bu rehber, Apache ters proxy d\u00fcnyas\u0131na sa\u011flam bir giri\u015f yapman\u0131z i\u00e7in size gerekli bilgileri ve ara\u00e7lar\u0131 sa\u011flam\u0131\u015ft\u0131r. Bu bilgileri kullanarak, web altyap\u0131n\u0131z\u0131 daha sa\u011flam ve verimli hale getirebilirsiniz.<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma\nGiri\u015f\n\u0130nternet d\u00fcnyas\u0131nda, web uygulamalar\u0131n\u0131n performans\u0131, g\u00fcvenli\u011f","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[241],"tags":[],"class_list":{"0":"post-38246","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-linux","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Apache&#039;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache&#039;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma\" \/>\n<meta property=\"og:description\" content=\"Apache&#039;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma Giri\u015f \u0130nternet d\u00fcnyas\u0131nda, web uygulamalar\u0131n\u0131n performans\u0131, g\u00fcvenli\u011f\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-01-26T14:40:58+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"18 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma\",\"datePublished\":\"2026-01-26T14:40:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\"},\"wordCount\":2903,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Linux\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\",\"name\":\"Apache'yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-01-26T14:40:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Apache'yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/","og_locale":"tr_TR","og_type":"article","og_title":"Apache'yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma","og_description":"Apache'yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma Giri\u015f \u0130nternet d\u00fcnyas\u0131nda, web uygulamalar\u0131n\u0131n performans\u0131, g\u00fcvenli\u011f","og_url":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-01-26T14:40:58+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"18 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma","datePublished":"2026-01-26T14:40:58+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/"},"wordCount":2903,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Linux"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/","url":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/","name":"Apache'yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-01-26T14:40:58+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/apacheyi-debian-8-uzerinde-mod_proxy-ile-ters-proxy-olarak-kullanma\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Apache&#8217;yi Debian 8 \u00dczerinde mod_proxy ile Ters Proxy Olarak Kullanma"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38246","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=38246"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38246\/revisions"}],"predecessor-version":[{"id":38247,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38246\/revisions\/38247"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38246"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38246"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38246"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}