{"id":36065,"date":"2025-12-07T16:40:42","date_gmt":"2025-12-07T13:40:42","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=36065"},"modified":"2025-12-07T16:40:42","modified_gmt":"2025-12-07T13:40:42","slug":"apache-web-sunucusunu-debian-9a-yukleme-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/","title":{"rendered":"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi"},"content":{"rendered":"<p><body><\/p>\n<h2>Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi<\/h2>\n<h3>Giri\u015f<\/h3>\n<p>\u0130nternet d\u00fcnyas\u0131n\u0131n temel ta\u015flar\u0131ndan biri olan web sunucular\u0131, kullan\u0131c\u0131lar\u0131n web sitelerine eri\u015fimini sa\u011flayan, i\u00e7erikleri depolayan ve sunan kritik bile\u015fenlerdir. Bu sunucular aras\u0131nda en pop\u00fcler ve yayg\u0131n kullan\u0131lanlardan biri de a\u00e7\u0131k kaynakl\u0131 Apache HTTP Sunucusu&#8217;dur. Sa\u011flaml\u0131\u011f\u0131, esnekli\u011fi ve geni\u015f mod\u00fcl deste\u011fi sayesinde Apache, k\u00fc\u00e7\u00fck ki\u015fisel bloglardan b\u00fcy\u00fck kurumsal web sitelerine kadar geni\u015f bir yelpazede tercih edilmektedir.<\/p>\n<p>Debian, kararl\u0131l\u0131\u011f\u0131, g\u00fcvenli\u011fi ve geni\u015f paket deposu ile bilinen, d\u00fcnya genelinde sunucular i\u00e7in en \u00e7ok tercih edilen Linux da\u011f\u0131t\u0131mlar\u0131ndan biridir. \u00d6zellikle Debian 9 &#8220;Stretch&#8221; s\u00fcr\u00fcm\u00fc, yay\u0131nland\u0131\u011f\u0131 d\u00f6nemde modern teknolojileri ve uzun s\u00fcreli deste\u011fi bir araya getirerek bir\u00e7ok sistem y\u00f6neticisinin g\u00f6zdesi olmu\u015ftur. Bu rehberde, Apache web sunucusunun Debian 9 &#8220;Stretch&#8221; \u00fczerine nas\u0131l ad\u0131m ad\u0131m kurulaca\u011f\u0131n\u0131, temel yap\u0131land\u0131rmalar\u0131n\u0131 ve g\u00fcvenli bir \u015fekilde nas\u0131l \u00e7al\u0131\u015ft\u0131r\u0131laca\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. Amac\u0131m\u0131z, bu rehberi takip eden herkesin kendi Debian 9 sunucusu \u00fczerinde \u00e7al\u0131\u015fan bir Apache web sunucusuna sahip olmas\u0131n\u0131 sa\u011flamakt\u0131r.<\/p>\n<h3>\u00d6n Ko\u015fullar<\/h3>\n<p>Apache kurulumuna ba\u015flamadan \u00f6nce, sunucunuzun belirli gereksinimleri kar\u015f\u0131lad\u0131\u011f\u0131ndan emin olman\u0131z gerekir. Bu \u00f6n ko\u015fullar, sorunsuz bir kurulum s\u00fcreci i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<h4>Debian 9 Sunucusu<\/h4>\n<p>Bu rehber, temiz bir Debian 9 (Stretch) kurulumu yap\u0131lm\u0131\u015f bir sunucu \u00fczerinde \u00e7al\u0131\u015ft\u0131r\u0131lmak \u00fczere tasarlanm\u0131\u015ft\u0131r. Sanal bir makine (VM), bulut sunucusu (VPS) veya fiziksel bir makine olabilir. Sunucunun internet eri\u015fimi oldu\u011fundan emin olun.<\/p>\n<h4>Root veya Sudo Yetkileri<\/h4>\n<p>Kurulum ve yap\u0131land\u0131rma ad\u0131mlar\u0131 genellikle y\u00f6netici ayr\u0131cal\u0131klar\u0131 gerektirir. Bu nedenle, <code>root<\/code> kullan\u0131c\u0131s\u0131 olarak oturum a\u00e7m\u0131\u015f olman\u0131z veya <code>sudo<\/code> yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131n\u0131z\u0131n olmas\u0131 gerekmektedir. <code>sudo<\/code> kullanmak, g\u00fcvenlik a\u00e7\u0131s\u0131ndan root kullan\u0131c\u0131s\u0131 olarak do\u011frudan i\u015flem yapmaktan daha g\u00fcvenlidir. Bu rehberdeki komutlar, aksi belirtilmedik\u00e7e <code>sudo<\/code> ile \u00e7al\u0131\u015ft\u0131r\u0131lacakt\u0131r.<\/p>\n<h4>\u0130nternet Ba\u011flant\u0131s\u0131<\/h4>\n<p>Paketleri indirmek ve g\u00fcncellemek i\u00e7in sunucunuzun aktif bir internet ba\u011flant\u0131s\u0131na sahip olmas\u0131 zorunludur.<\/p>\n<h3>Sistem G\u00fcncelleme<\/h3>\n<p>Herhangi bir yaz\u0131l\u0131m kurulumuna ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan emin olmak iyi bir uygulamad\u0131r. Bu, potansiyel g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve en yeni paket ba\u011f\u0131ml\u0131l\u0131klar\u0131n\u0131 sa\u011flar.<\/p>\n<h4>Paket Listesini G\u00fcncelleme<\/h4>\n<p>\u0130lk ad\u0131m olarak, sisteminizin paket listesini g\u00fcncelleyelim. Bu komut, yerel paket indeksinizi Debian depolar\u0131ndaki en son bilgilerle senkronize eder:<\/p>\n<pre><code class=\"language-bash\">sudo apt update<\/code><\/pre>\n<h4>Paketleri Y\u00fckseltme<\/h4>\n<p>Paket listesi g\u00fcncellendikten sonra, y\u00fckl\u00fc paketlerinizi en son s\u00fcr\u00fcmlerine y\u00fckseltebilirsiniz. Bu i\u015flem, mevcut yaz\u0131l\u0131mlar\u0131n\u0131zdaki t\u00fcm g\u00fcncellemeleri ve g\u00fcvenlik yamalar\u0131n\u0131 uygular:<\/p>\n<pre><code class=\"language-bash\">sudo apt upgrade -y<\/code><\/pre>\n<p><code>-y<\/code> bayra\u011f\u0131, t\u00fcm y\u00fckseltme onay sorular\u0131na otomatik olarak &#8220;evet&#8221; yan\u0131t\u0131 vermenizi sa\u011flar. Bu i\u015flem biraz zaman alabilir.<\/p>\n<h3>Apache Kurulumu<\/h3>\n<p>Sistemimiz g\u00fcncellendi\u011fine g\u00f6re, Apache web sunucusunu kurmaya ba\u015flayabiliriz. Debian&#8217;da Apache2 paketi mevcuttur ve <code>apt<\/code> paket y\u00f6neticisi arac\u0131l\u0131\u011f\u0131yla kolayca kurulabilir.<\/p>\n<h4>Apache Paketini Y\u00fckleme<\/h4>\n<p>A\u015fa\u011f\u0131daki komut, Apache2 paketini ve onunla birlikte gelen t\u00fcm gerekli ba\u011f\u0131ml\u0131l\u0131klar\u0131 y\u00fckleyecektir:<\/p>\n<pre><code class=\"language-bash\">sudo apt install apache2 -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Apache servisi otomatik olarak ba\u015flayacak ve sistem ba\u015flang\u0131c\u0131nda etkinle\u015ftirilecektir.<\/p>\n<h4>Kurulumu Do\u011frulama<\/h4>\n<p>Apache&#8217;nin d\u00fczg\u00fcn bir \u015fekilde kurulup \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in birka\u00e7 y\u00f6ntem vard\u0131r.<\/p>\n<h5>Servis Durumunu Kontrol Etme<\/h5>\n<p>Apache servisinin durumunu kontrol etmek i\u00e7in <code>systemctl<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status apache2<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, servisin <code>active (running)<\/code> oldu\u011funu belirtmelidir. E\u011fer de\u011filse, servisi ba\u015flatmak i\u00e7in <code>sudo systemctl start apache2<\/code> komutunu kullanabilirsiniz.<\/p>\n<h5>Web Taray\u0131c\u0131s\u0131 ile Do\u011frulama<\/h5>\n<p>Kurulumun ba\u015far\u0131l\u0131 oldu\u011funu g\u00f6rsel olarak do\u011frulamak i\u00e7in, web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131p sunucunuzun IP adresini veya alan ad\u0131n\u0131 girmelisiniz. \u00d6rne\u011fin, <code>http:\/\/sunucu_ip_adresiniz<\/code> veya <code>http:\/\/alan_adiniz<\/code>.<\/p>\n<p>E\u011fer her \u015fey do\u011fru yap\u0131land\u0131r\u0131ld\u0131ysa, Debian&#8217;\u0131n varsay\u0131lan Apache2 kar\u015f\u0131lama sayfas\u0131n\u0131 g\u00f6rmelisiniz. Bu sayfa, Apache&#8217;nin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve web trafi\u011fini alabildi\u011fini g\u00f6sterir.<\/p>\n<h3>G\u00fcvenlik Duvar\u0131 Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Web sunucular\u0131 genellikle internete a\u00e7\u0131kt\u0131r ve bu nedenle g\u00fcvenlik duvar\u0131 yap\u0131land\u0131rmas\u0131 kritik \u00f6neme sahiptir. Debian&#8217;da, <code>UFW (Uncomplicated Firewall)<\/code> g\u00fcvenlik duvar\u0131 y\u00f6netimi i\u00e7in basit ve etkili bir ara\u00e7t\u0131r.<\/p>\n<h4>UFW Kurulumu<\/h4>\n<p>E\u011fer UFW hen\u00fcz y\u00fckl\u00fc de\u011filse, a\u015fa\u011f\u0131daki komutla kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt install ufw -y<\/code><\/pre>\n<h4>UFW&#8217;yi Etkinle\u015ftirme<\/h4>\n<p>UFW&#8217;yi etkinle\u015ftirmeden \u00f6nce, SSH ba\u011flant\u0131n\u0131z\u0131n kesilmemesi i\u00e7in SSH portunu (varsay\u0131lan 22) a\u00e7man\u0131z \u00f6nemlidir:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow OpenSSH<\/code><\/pre>\n<p>\u015eimdi UFW&#8217;yi etkinle\u015ftirebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw enable<\/code><\/pre>\n<p>Bir uyar\u0131 mesaj\u0131 alacaks\u0131n\u0131z; <code>y<\/code> tu\u015funa basarak onaylay\u0131n.<\/p>\n<h4>Apache Profillerini G\u00f6r\u00fcnt\u00fcleme<\/h4>\n<p>UFW, Apache i\u00e7in \u00f6nceden tan\u0131mlanm\u0131\u015f profillerle gelir. Bu profilleri g\u00f6r\u00fcnt\u00fclemek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo ufw app list<\/code><\/pre>\n<p>Bu komutun \u00e7\u0131kt\u0131s\u0131nda genellikle \u015fu profilleri g\u00f6r\u00fcrs\u00fcn\u00fcz:<br \/>\n*   <code>Apache<\/code>: Sadece HTTP (port 80) trafi\u011fine izin verir.<br \/>\n*   <code>Apache Full<\/code>: Hem HTTP (port 80) hem de HTTPS (port 443) trafi\u011fine izin verir.<br \/>\n*   <code>Apache Secure<\/code>: Sadece HTTPS (port 443) trafi\u011fine izin verir.<\/p>\n<h4>HTTP ve HTTPS Portlar\u0131n\u0131 A\u00e7ma<\/h4>\n<p>Web sitenizin hem HTTP hem de HTTPS \u00fczerinden eri\u015filebilir olmas\u0131n\u0131 istiyorsan\u0131z, <code>Apache Full<\/code> profilini etkinle\u015ftirmelisiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 'Apache Full'<\/code><\/pre>\n<p>E\u011fer sadece HTTP \u00fczerinden eri\u015fim yeterliyse, <code>Apache<\/code> profilini kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 'Apache'<\/code><\/pre>\n<h4>G\u00fcvenlik Duvar\u0131 Durumunu Kontrol Etme<\/h4>\n<p>G\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131z\u0131n do\u011fru bir \u015fekilde uyguland\u0131\u011f\u0131ndan emin olmak i\u00e7in UFW durumunu kontrol edebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo ufw status<\/code><\/pre>\n<p>\u00c7\u0131kt\u0131, <code>Apache Full<\/code> (veya se\u00e7ti\u011finiz di\u011fer profil) ve <code>OpenSSH<\/code> i\u00e7in izin verilen kurallar\u0131 g\u00f6stermelidir.<\/p>\n<h3>Apache Yap\u0131land\u0131rma Dosyalar\u0131<\/h3>\n<p>Apache&#8217;nin g\u00fcc\u00fc, mod\u00fcler yap\u0131s\u0131ndan ve kapsaml\u0131 yap\u0131land\u0131rma se\u00e7eneklerinden gelir. Debian&#8217;da Apache&#8217;nin yap\u0131land\u0131rma dosyalar\u0131 belirli bir dizin yap\u0131s\u0131 i\u00e7inde d\u00fczenlenmi\u015ftir.<\/p>\n<h4>Ana Yap\u0131land\u0131rma Dosyas\u0131<\/h4>\n<p>Apache&#8217;nin ana yap\u0131land\u0131rma dosyas\u0131 <code>\/etc\/apache2\/apache2.conf<\/code> konumundad\u0131r. Bu dosya, global sunucu ayarlar\u0131n\u0131, mod\u00fcl y\u00fcklemelerini ve di\u011fer yap\u0131land\u0131rma dosyalar\u0131n\u0131n dahil edildi\u011fi y\u00f6nergeleri i\u00e7erir. Genellikle bu dosyay\u0131 do\u011frudan d\u00fczenlemek yerine, daha spesifik ayarlar i\u00e7in di\u011fer yap\u0131land\u0131rma dosyalar\u0131n\u0131 kullanmak daha iyidir.<\/p>\n<h4>Sanal Host Yap\u0131land\u0131rma Dizinleri<\/h4>\n<p>Sanal hostlar, tek bir Apache sunucusunun birden fazla web sitesini bar\u0131nd\u0131rmas\u0131na olanak tan\u0131r. Debian&#8217;da sanal host yap\u0131land\u0131rmalar\u0131 a\u015fa\u011f\u0131daki dizinlerde bulunur:<\/p>\n<p>*   <code>\/etc\/apache2\/sites-available\/<\/code>: Bu dizin, sanal host yap\u0131land\u0131rma dosyalar\u0131n\u0131 bar\u0131nd\u0131r\u0131r. Bir sanal host&#8217;u etkinle\u015ftirmek i\u00e7in, bu dizindeki yap\u0131land\u0131rma dosyas\u0131n\u0131n <code>\/etc\/apache2\/sites-enabled\/<\/code> dizinine sembolik bir ba\u011flant\u0131s\u0131 (symlink) olu\u015fturulur.<br \/>\n*   <code>\/etc\/apache2\/sites-enabled\/<\/code>: Bu dizindeki dosyalar veya sembolik ba\u011flant\u0131lar, Apache taraf\u0131ndan etkinle\u015ftirilen sanal hostlar\u0131 temsil eder.<\/p>\n<p>Varsay\u0131lan olarak, <code>000-default.conf<\/code> ad\u0131nda bir sanal host yap\u0131land\u0131rma dosyas\u0131 bulunur. Bu dosya, sunucunuzun IP adresine veya varsay\u0131lan alan ad\u0131na yap\u0131lan istekleri i\u015fler.<\/p>\n<h4>Mod\u00fcl Yap\u0131land\u0131rma Dizinleri<\/h4>\n<p>Apache, mod\u00fcler bir yap\u0131ya sahiptir. Mod\u00fcller, sunucuya ek i\u015flevsellik katar (\u00f6rne\u011fin, URL yeniden yazma, SSL deste\u011fi).<\/p>\n<p>*   <code>\/etc\/apache2\/mods-available\/<\/code>: Bu dizin, mevcut t\u00fcm Apache mod\u00fcllerinin yap\u0131land\u0131rma dosyalar\u0131n\u0131 i\u00e7erir.<br \/>\n*   <code>\/etc\/apache2\/mods-enabled\/<\/code>: Bu dizindeki dosyalar veya sembolik ba\u011flant\u0131lar, Apache taraf\u0131ndan etkinle\u015ftirilen mod\u00fclleri temsil eder.<\/p>\n<p>Mod\u00fclleri etkinle\u015ftirmek veya devre d\u0131\u015f\u0131 b\u0131rakmak i\u00e7in <code>a2enmod<\/code> ve <code>a2dismod<\/code> komutlar\u0131 kullan\u0131l\u0131r.<\/p>\n<h4>G\u00fcnl\u00fck Dosyalar\u0131<\/h4>\n<p>Apache, sunucu aktivitelerini ve hatalar\u0131n\u0131 g\u00fcnl\u00fck dosyalar\u0131na kaydeder. Bu dosyalar, sorun giderme ve performans analizi i\u00e7in \u00e7ok \u00f6nemlidir.<\/p>\n<p>*   <code>\/var\/log\/apache2\/access.log<\/code>: Bu dosya, sunucuya yap\u0131lan t\u00fcm ba\u015far\u0131l\u0131 istekleri kaydeder. Her istek i\u00e7in istemci IP adresi, istek zaman\u0131, HTTP metodu, istenen URL, HTTP durumu kodu, yan\u0131t boyutu ve taray\u0131c\u0131 bilgileri gibi bilgiler bulunur.<br \/>\n*   <code>\/var\/log\/apache2\/error.log<\/code>: Bu dosya, Apache taraf\u0131ndan kar\u015f\u0131la\u015f\u0131lan t\u00fcm hatalar\u0131 ve uyar\u0131lar\u0131 kaydeder.<\/p>\n<h3>Sanal Host Kurulumu<\/h3>\n<p>\u00c7o\u011fu durumda, tek bir web sunucusunda birden fazla web sitesi bar\u0131nd\u0131rmak istersiniz. Apache&#8217;nin sanal host \u00f6zelli\u011fi, bunu kolayca yapman\u0131z\u0131 sa\u011flar. \u015eimdi, <code>ornek.com<\/code> ad\u0131nda bir alan ad\u0131 i\u00e7in sanal host olu\u015ftural\u0131m.<\/p>\n<h4>Alan Ad\u0131 \u00c7\u00f6z\u00fcmlemesi<\/h4>\n<p>E\u011fer ger\u00e7ek bir alan ad\u0131n\u0131z varsa, DNS kay\u0131tlar\u0131n\u0131z\u0131n sunucunuzun IP adresini i\u015faret etti\u011finden emin olun. Test amac\u0131yla, yerel makinenizin <code>\/etc\/hosts<\/code> (Linux\/macOS) veya <code>C:\\Windows\\System32\\drivers\\etc\\hosts<\/code> (Windows) dosyas\u0131na a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyerek bu alan ad\u0131n\u0131 sunucunuzun IP adresine y\u00f6nlendirebilirsiniz:<\/p>\n<pre><code class=\"language-\">SUNUCU_IP_ADRESINIZ ornek.com www.ornek.com<\/code><\/pre>\n<h4>Dizin Yap\u0131s\u0131 Olu\u015fturma<\/h4>\n<p>Web sitenizin dosyalar\u0131n\u0131 bar\u0131nd\u0131rmak i\u00e7in bir dizin yap\u0131s\u0131 olu\u015ftural\u0131m. Genellikle <code>\/var\/www\/<\/code> dizini alt\u0131nda her sanal host i\u00e7in ayr\u0131 bir dizin olu\u015fturulur.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/var\/www\/ornek.com\/public_html<\/code><\/pre>\n<p><code>public_html<\/code> dizini, web sitenizin ana dosyalar\u0131n\u0131 i\u00e7erecektir.<\/p>\n<h4>\u0130zinleri Ayarlama<\/h4>\n<p>Apache web sunucusu, web dosyalar\u0131na eri\u015fmek i\u00e7in belirli izinlere ihtiya\u00e7 duyar. Genellikle, web sunucusu kullan\u0131c\u0131s\u0131 (<code>www-data<\/code> Debian&#8217;da) bu dosyalara sahip olmal\u0131 veya eri\u015fim iznine sahip olmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo chown -R www-data:www-data \/var\/www\/ornek.com\nsudo chmod -R 755 \/var\/www\/ornek.com<\/code><\/pre>\n<p>Bu komutlar, dizinlerin ve dosyalar\u0131n sahipli\u011fini <code>www-data<\/code> kullan\u0131c\u0131s\u0131na ve grubuna atar ve genel okuma\/y\u00fcr\u00fctme izni verir.<\/p>\n<h4>Varsay\u0131lan Sayfa Olu\u015fturma<\/h4>\n<p>Sanal host&#8217;un \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in basit bir HTML dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/var\/www\/ornek.com\/public_html\/index.html<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki HTML i\u00e7eri\u011fini ekleyin:<\/p>\n<pre><code class=\"language-html\"><!DOCTYPE html>\n<html lang=\"tr\">\n<head>\n    <meta charset=\"utf-8\">\n    <title>Ho\u015f Geldiniz ornek.com<\/title>\n<\/head>\n<body>\n    \n    <p>Bu sayfa, ornek.com alan ad\u0131 i\u00e7in Apache web sunucusu taraf\u0131ndan sunulmaktad\u0131r.<\/p>\n<\/body>\n<\/html><\/code><\/pre>\n<p>Kaydedin ve \u00e7\u0131k\u0131n (CTRL+O, Enter, CTRL+X).<\/p>\n<h4>Sanal Host Yap\u0131land\u0131rma Dosyas\u0131 Olu\u015fturma<\/h4>\n<p>\u015eimdi <code>ornek.com<\/code> i\u00e7in bir sanal host yap\u0131land\u0131rma dosyas\u0131 olu\u015ftural\u0131m. Mevcut varsay\u0131lan yap\u0131land\u0131rma dosyas\u0131n\u0131 kopyalayarak ba\u015flayabiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/ornek.com.conf<\/code><\/pre>\n<p>\u015eimdi yeni olu\u015fturdu\u011fumuz dosyay\u0131 d\u00fczenleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/ornek.com.conf<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7eri\u011fini a\u015fa\u011f\u0131daki gibi g\u00fcncelleyin. \u00d6zellikle <code>ServerAdmin<\/code>, <code>DocumentRoot<\/code>, <code>ServerName<\/code> ve <code>ServerAlias<\/code> direktiflerini de\u011fi\u015ftirin:<\/p>\n<pre><code class=\"language-apache\"><VirtualHost *:80>\n    ServerAdmin webmaster@ornek.com\n    DocumentRoot \/var\/www\/ornek.com\/public_html\n    ServerName ornek.com\n    ServerAlias www.ornek.com\n\n    <Directory \/var\/www\/ornek.com\/public_html>\n        Options Indexes FollowSymLinks\n        AllowOverride All\n        Require all granted\n    <\/Directory>\n\n    ErrorLog ${APACHE_LOG_DIR}\/ornek.com_error.log\n    CustomLog ${APACHE_LOG_DIR}\/ornek.com_access.log combined\n<\/VirtualHost><\/code><\/pre>\n<p>*   <code>ServerAdmin<\/code>: Sunucu y\u00f6neticisinin e-posta adresi.<br \/>\n*   <code>DocumentRoot<\/code>: Web sitesinin dosyalar\u0131n\u0131n bulundu\u011fu k\u00f6k dizin.<br \/>\n*   <code>ServerName<\/code>: Bu sanal host i\u00e7in birincil alan ad\u0131.<br \/>\n*   <code>ServerAlias<\/code>: Bu sanal host i\u00e7in di\u011fer alan adlar\u0131 (\u00f6rne\u011fin, <code>www<\/code> \u00f6n eki ile).<br \/>\n*   <code><Directory><\/code> blo\u011fu, belirli bir dizin i\u00e7in eri\u015fim izinlerini ve se\u00e7enekleri tan\u0131mlar. <code>AllowOverride All<\/code>, <code>.htaccess<\/code> dosyalar\u0131n\u0131n kullan\u0131lmas\u0131na izin verir.<br \/>\n*   <code>ErrorLog<\/code> ve <code>CustomLog<\/code>: Bu sanal host&#8217;a ait hata ve eri\u015fim g\u00fcnl\u00fck dosyalar\u0131n\u0131 belirtir.<\/p>\n<p>Kaydedin ve \u00e7\u0131k\u0131n.<\/p>\n<h4>Sanal Host&#8217;u Etkinle\u015ftirme<\/h4>\n<p>Yeni sanal host&#8217;u etkinle\u015ftirmek i\u00e7in <code>a2ensite<\/code> komutunu kullan\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite ornek.com.conf<\/code><\/pre>\n<p>Varsay\u0131lan sanal host&#8217;u devre d\u0131\u015f\u0131 b\u0131rakmak isterseniz:<\/p>\n<pre><code class=\"language-bash\">sudo a2dissite 000-default.conf<\/code><\/pre>\n<h4>Apache Yap\u0131land\u0131rmas\u0131n\u0131 Test Etme<\/h4>\n<p>Herhangi bir de\u011fi\u015fiklik yapmadan \u00f6nce Apache yap\u0131land\u0131rma dosyalar\u0131n\u0131zda 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 <code>Syntax OK<\/code> \u00e7\u0131kt\u0131s\u0131n\u0131 al\u0131rsan\u0131z, yap\u0131land\u0131rman\u0131zda bir hata yok demektir. Aksi takdirde, hata mesajlar\u0131n\u0131 inceleyerek sorunu gidermeniz gerekir.<\/p>\n<h4>Apache&#8217;yi Yeniden Ba\u015flatma<\/h4>\n<p>Yeni yap\u0131land\u0131rmalar\u0131n etkili 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<h4>Taray\u0131c\u0131 ile Test Etme<\/h4>\n<p>Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve <code>http:\/\/ornek.com<\/code> adresine gidin (veya <code>http:\/\/sunucu_ip_adresiniz<\/code> e\u011fer DNS&#8217;i ayarlamad\u0131ysan\u0131z). Daha \u00f6nce olu\u015fturdu\u011funuz &#8220;Ba\u015far\u0131l\u0131! ornek.com sanal host&#8217;u \u00e7al\u0131\u015f\u0131yor!&#8221; ba\u015fl\u0131kl\u0131 sayfay\u0131 g\u00f6rmelisiniz.<\/p>\n<h3>SSL\/TLS ile G\u00fcvenli Apache<\/h3>\n<p>G\u00fcn\u00fcm\u00fczde web sitelerinin HTTPS (SSL\/TLS) \u00fczerinden hizmet vermesi bir standart haline gelmi\u015ftir. Bu, veri iletimini \u015fifreleyerek kullan\u0131c\u0131 gizlili\u011fini ve g\u00fcvenli\u011fini art\u0131r\u0131r. Let&#8217;s Encrypt, \u00fccretsiz ve otomatik SSL\/TLS sertifikalar\u0131 sa\u011flayan pop\u00fcler bir servistir.<\/p>\n<h4>Certbot Kurulumu<\/h4>\n<p>Let&#8217;s Encrypt sertifikalar\u0131n\u0131 almak ve y\u00f6netmek i\u00e7in <code>certbot<\/code> arac\u0131n\u0131 kullanaca\u011f\u0131z. Debian 9 i\u00e7in <code>certbot<\/code> paketini y\u00fckleyelim:<\/p>\n<pre><code class=\"language-bash\">sudo apt install certbot python-certbot-apache -y<\/code><\/pre>\n<h4>SSL Sertifikas\u0131 Alma<\/h4>\n<p>\u015eimdi <code>certbot<\/code>&#8216;u kullanarak <code>ornek.com<\/code> i\u00e7in SSL sertifikas\u0131 alabiliriz. Certbot, Apache yap\u0131land\u0131rman\u0131z\u0131 otomatik olarak alg\u0131layacak ve g\u00fcncelleyecektir.<\/p>\n<pre><code class=\"language-bash\">sudo certbot --apache -d ornek.com -d www.ornek.com<\/code><\/pre>\n<p>Bu komutu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda, sizden baz\u0131 bilgiler istenecektir:<br \/>\n1.  E-posta adresiniz (yenileme ve g\u00fcvenlik bildirimleri i\u00e7in).<br \/>\n2.  Let&#8217;s Encrypt hizmet \u015fartlar\u0131n\u0131 kabul etmeniz.<br \/>\n3.  E-posta adresinizin Let&#8217;s Encrypt ile payla\u015f\u0131lmas\u0131na izin verip vermedi\u011finiz.<br \/>\n4.  HTTP trafi\u011fini HTTPS&#8217;ye y\u00f6nlendirip y\u00f6nlendirmeyece\u011finiz (genellikle <code>2: Redirect<\/code> se\u00e7ene\u011fi \u00f6nerilir).<\/p>\n<p>Ba\u015far\u0131l\u0131 bir kurulumdan sonra, Certbot size sertifikalar\u0131n\u0131z\u0131n nerede sakland\u0131\u011f\u0131 ve ne zaman sona erece\u011fi hakk\u0131nda bilgi verecektir.<\/p>\n<h4>Otomatik Yenileme Testi<\/h4>\n<p>Let&#8217;s Encrypt sertifikalar\u0131 90 g\u00fcn ge\u00e7erlidir. Certbot, sertifikalar\u0131 otomatik olarak yenilemek i\u00e7in bir cron job veya systemd timer kurar. Yenileme s\u00fcrecinin d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in bir kuru \u00e7al\u0131\u015ft\u0131rma (dry run) yapabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo certbot renew --dry-run<\/code><\/pre>\n<p>E\u011fer bu komut herhangi bir hata vermezse, otomatik yenileme mekanizman\u0131z\u0131n d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 varsayabilirsiniz.<\/p>\n<p>\u015eimdi taray\u0131c\u0131n\u0131zdan <code>https:\/\/ornek.com<\/code> adresine giderek sitenizin HTTPS \u00fczerinden g\u00fcvenli bir \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 kontrol edebilirsiniz.<\/p>\n<h3>Apache Y\u00f6netim Komutlar\u0131<\/h3>\n<p>Apache servisini y\u00f6netmek i\u00e7in <code>systemctl<\/code> komutunu kullan\u0131r\u0131z. \u0130\u015fte en yayg\u0131n kullan\u0131lan komutlar:<\/p>\n<p>*   <strong>Apache&#8217;yi Ba\u015flatma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl start apache2<\/code><\/pre>\n<p>*   <strong>Apache&#8217;yi Durdurma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl stop apache2<\/code><\/pre>\n<p>*   <strong>Apache&#8217;yi Yeniden Ba\u015flatma:<\/strong> (Yap\u0131land\u0131rma dosyalar\u0131nda \u00f6nemli de\u011fi\u015fiklikler yap\u0131ld\u0131\u011f\u0131nda kullan\u0131l\u0131r, servisi tamamen durdurup yeniden ba\u015flat\u0131r.)<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<p>*   <strong>Apache&#8217;yi Yeniden Y\u00fckleme:<\/strong> (K\u00fc\u00e7\u00fck yap\u0131land\u0131rma de\u011fi\u015fiklikleri i\u00e7in kullan\u0131l\u0131r, servisi durdurmadan yeni yap\u0131land\u0131rmay\u0131 y\u00fckler.)<\/p>\n<pre><code class=\"language-bash\">sudo systemctl reload apache2<\/code><\/pre>\n<p>*   <strong>Apache Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl status apache2<\/code><\/pre>\n<p>*   <strong>Sistem Ba\u015flang\u0131c\u0131nda Apache&#8217;yi Etkinle\u015ftirme:<\/strong> (Varsay\u0131lan olarak etkindir.)<\/p>\n<pre><code class=\"language-bash\">sudo systemctl enable apache2<\/code><\/pre>\n<p>*   <strong>Sistem Ba\u015flang\u0131c\u0131nda Apache&#8217;yi Devre D\u0131\u015f\u0131 B\u0131rakma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl disable apache2<\/code><\/pre>\n<h3>Ek Apache Mod\u00fclleri<\/h3>\n<p>Apache&#8217;nin mod\u00fcler yap\u0131s\u0131, ihtiya\u00e7 duydu\u011funuz ek i\u015flevsellikleri kolayca eklemenizi sa\u011flar.<\/p>\n<h4>Mod\u00fcl Listeleme<\/h4>\n<p>Mevcut ve etkinle\u015ftirilmi\u015f mod\u00fclleri g\u00f6rmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo apache2ctl -M<\/code><\/pre>\n<p>Bu komut, y\u00fckl\u00fc t\u00fcm mod\u00fclleri listeler.<\/p>\n<h4>Mod\u00fcl Etkinle\u015ftirme\/Devre D\u0131\u015f\u0131 B\u0131rakma<\/h4>\n<p>Bir mod\u00fcl\u00fc etkinle\u015ftirmek i\u00e7in <code>a2enmod<\/code> komutunu, devre d\u0131\u015f\u0131 b\u0131rakmak i\u00e7in <code>a2dismod<\/code> komutunu kullan\u0131r\u0131z. De\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in Apache&#8217;yi yeniden ba\u015flatmay\u0131 unutmay\u0131n.<\/p>\n<h5>\u00d6rnek: <code>mod_rewrite<\/code><\/h5>\n<p><code>mod_rewrite<\/code>, URL&#8217;leri yeniden yazmak i\u00e7in kullan\u0131lan \u00e7ok g\u00fc\u00e7l\u00fc bir mod\u00fcld\u00fcr. SEO dostu URL&#8217;ler olu\u015fturmak veya eski URL&#8217;leri yeni adreslere y\u00f6nlendirmek i\u00e7in yayg\u0131n olarak kullan\u0131l\u0131r.<\/p>\n<p>*   <strong><code>mod_rewrite<\/code>&#8216;\u0131 Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo a2enmod rewrite<\/code><\/pre>\n<p>*   <strong>Apache&#8217;yi Yeniden Ba\u015flatma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<h3>Performans Optimizasyonu<\/h3>\n<p>B\u00fcy\u00fck trafik alan web siteleri i\u00e7in Apache performans\u0131n\u0131 optimize etmek \u00f6nemlidir. \u0130\u015fte baz\u0131 temel optimizasyon ipu\u00e7lar\u0131:<\/p>\n<h4>MPM Mod\u00fclleri (Multi-Processing Modules)<\/h4>\n<p>Apache, gelen istekleri i\u015flemek i\u00e7in farkl\u0131 Multi-Processing Modules (MPM) kullanabilir. Debian 9&#8217;da varsay\u0131lan olarak <code>mpm_event<\/code> etkinle\u015ftirilmi\u015ftir, bu genellikle modern sunucular i\u00e7in iyi bir se\u00e7imdir. Di\u011fer yayg\u0131n MPM&#8217;ler <code>mpm_prefork<\/code> (her istek i\u00e7in ayr\u0131 bir s\u00fcre\u00e7) ve <code>mpm_worker<\/code> (\u00e7oklu i\u015f par\u00e7ac\u0131klar\u0131 olan s\u00fcre\u00e7ler) i\u00e7erir.<\/p>\n<p>Hangi MPM&#8217;nin etkin oldu\u011funu kontrol etmek i\u00e7in:<\/p>\n<pre><code class=\"language-bash\">sudo apache2ctl -M | grep mpm<\/code><\/pre>\n<p>MPM yap\u0131land\u0131rmalar\u0131 genellikle <code>\/etc\/apache2\/mods-available\/<\/code> dizinindeki ilgili <code>.conf<\/code> dosyalar\u0131nda (\u00f6rne\u011fin <code>mpm_event.conf<\/code>) bulunur.<\/p>\n<h4>KeepAlive Ayarlar\u0131<\/h4>\n<p><code>KeepAlive<\/code> \u00f6zelli\u011fi, istemcilerin tek bir TCP ba\u011flant\u0131s\u0131 \u00fczerinden birden fazla istek g\u00f6ndermesine olanak tan\u0131r, bu da ba\u011flant\u0131 kurma y\u00fck\u00fcn\u00fc azalt\u0131r ve performans\u0131 art\u0131r\u0131r.<\/p>\n<p>Ana yap\u0131land\u0131rma dosyas\u0131nda (<code>\/etc\/apache2\/apache2.conf<\/code>) a\u015fa\u011f\u0131daki direktifleri bulabilir ve ayarlayabilirsiniz:<\/p>\n<pre><code class=\"language-apache\">KeepAlive On\nMaxKeepAliveRequests 100\nKeepAliveTimeout 5<\/code><\/pre>\n<p>*   <code>KeepAlive On\/Off<\/code>: KeepAlive&#8217;\u0131 etkinle\u015ftirir veya devre d\u0131\u015f\u0131 b\u0131rak\u0131r.<br \/>\n*   <code>MaxKeepAliveRequests<\/code>: Bir ba\u011flant\u0131 \u00fczerinden ka\u00e7 iste\u011fin i\u015flenebilece\u011fini s\u0131n\u0131rlar.<br \/>\n*   <code>KeepAliveTimeout<\/code>: Yeni bir istek gelmeden \u00f6nce ba\u011flant\u0131n\u0131n ne kadar s\u00fcre a\u00e7\u0131k kalaca\u011f\u0131n\u0131 belirler (saniye cinsinden).<\/p>\n<h4>\u00d6nbellekleme (Caching)<\/h4>\n<p>Apache, <code>mod_cache<\/code> ve <code>mod_disk_cache<\/code> gibi mod\u00fcller arac\u0131l\u0131\u011f\u0131yla \u00f6nbellekleme yapabilir. Bu, s\u0131k eri\u015filen i\u00e7eriklerin diskte veya bellekte saklanarak daha h\u0131zl\u0131 sunulmas\u0131n\u0131 sa\u011flar.<\/p>\n<p>\u00d6nbellekleme mod\u00fcllerini etkinle\u015ftirmek ve yap\u0131land\u0131rmak, web sitenizin y\u00fckleme s\u00fcrelerini \u00f6nemli \u00f6l\u00e7\u00fcde azaltabilir. \u00d6rne\u011fin, <code>mod_expires<\/code> mod\u00fcl\u00fc ile taray\u0131c\u0131 \u00f6nbelleklemesini kontrol edebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod expires\nsudo systemctl restart apache2<\/code><\/pre>\n<p>Ard\u0131ndan sanal host yap\u0131land\u0131rman\u0131za veya <code>.htaccess<\/code> dosyan\u0131za \u00f6nbellekleme kurallar\u0131 ekleyebilirsiniz.<\/p>\n<h3>Sorun Giderme<\/h3>\n<p>Apache ile \u00e7al\u0131\u015f\u0131rken sorunlarla kar\u015f\u0131la\u015fmak do\u011fald\u0131r. \u0130\u015fte yayg\u0131n sorunlar\u0131 gidermek i\u00e7in baz\u0131 ipu\u00e7lar\u0131:<\/p>\n<h4>G\u00fcnl\u00fck Dosyalar\u0131n\u0131 Kontrol Etme<\/h4>\n<p>Sorun gidermede ilk ba\u015fvurman\u0131z gereken yer, Apache g\u00fcnl\u00fck dosyalar\u0131d\u0131r:<\/p>\n<p>*   <strong>Eri\u015fim G\u00fcnl\u00fckleri:<\/strong> <code>sudo tail -f \/var\/log\/apache2\/access.log<\/code><br \/>\n*   <strong>Hata G\u00fcnl\u00fckleri:<\/strong> <code>sudo tail -f \/var\/log\/apache2\/error.log<\/code><\/p>\n<p>Bu dosyalar, hatalar\u0131n nedenleri hakk\u0131nda de\u011ferli bilgiler sa\u011flar. Sanal host&#8217;unuz i\u00e7in \u00f6zel g\u00fcnl\u00fck dosyalar\u0131 ayarlad\u0131ysan\u0131z, onlar\u0131 kontrol etmeyi unutmay\u0131n (\u00f6rne\u011fin <code>\/var\/log\/apache2\/ornek.com_error.log<\/code>).<\/p>\n<h4>Yap\u0131land\u0131rma Hatas\u0131 Kontrol\u00fc<\/h4>\n<p>Apache&#8217;yi yeniden ba\u015flat\u0131rken veya yeniden y\u00fcklerken bir hata al\u0131rsan\u0131z, yap\u0131land\u0131rma dosyalar\u0131n\u0131zda bir s\u00f6zdizimi hatas\u0131 olabilir.<\/p>\n<pre><code class=\"language-bash\">sudo apache2ctl configtest<\/code><\/pre>\n<p>Bu komut, herhangi bir s\u00f6zdizimi hatas\u0131n\u0131 rapor edecektir.<\/p>\n<h4>Port \u00c7ak\u0131\u015fmalar\u0131<\/h4>\n<p>Apache&#8217;nin varsay\u0131lan olarak 80 (HTTP) ve 443 (HTTPS) portlar\u0131n\u0131 dinledi\u011fini unutmay\u0131n. E\u011fer ba\u015fka bir servis bu portlar\u0131 kullan\u0131yorsa, Apache ba\u015flayamayacakt\u0131r.<\/p>\n<p>Hangi servislerin hangi portlar\u0131 dinledi\u011fini g\u00f6rmek i\u00e7in <code>netstat<\/code> veya <code>ss<\/code> komutunu kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo netstat -tulnp | grep \":80\\|:443\"\n<h2>veya<\/h2>\nsudo ss -tulnp | grep \":80\\|:443\"<\/code><\/pre>\n<p>E\u011fer ba\u015fka bir s\u00fcre\u00e7 bu portlar\u0131 kullan\u0131yorsa, o s\u00fcreci durdurman\u0131z veya Apache&#8217;nin ba\u015fka bir portta dinlemesini yap\u0131land\u0131rman\u0131z gerekebilir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu rehberde, Debian 9 &#8220;Stretch&#8221; \u00fczerine Apache web sunucusunun temel kurulumunu, g\u00fcvenlik duvar\u0131 yap\u0131land\u0131rmas\u0131n\u0131, sanal host olu\u015fturmay\u0131 ve Let&#8217;s Encrypt ile SSL\/TLS g\u00fcvenli\u011fini ad\u0131m ad\u0131m \u00f6\u011frendik. Ayr\u0131ca, Apache&#8217;nin y\u00f6netim komutlar\u0131na, mod\u00fcllerine, performans optimizasyonuna ve temel sorun giderme y\u00f6ntemlerine de\u011findik.<\/p>\n<p>Apache, g\u00fc\u00e7l\u00fc ve esnek bir web sunucusudur ve bu rehberle edindi\u011finiz bilgiler, kendi web projelerinizi bar\u0131nd\u0131rmak i\u00e7in sa\u011flam bir temel olu\u015fturacakt\u0131r. Web sunucusu y\u00f6netiminde her zaman daha fazlas\u0131n\u0131 \u00f6\u011frenmek ve ke\u015ffetmek m\u00fcmk\u00fcnd\u00fcr.<\/p>\n<h4>Sonraki Ad\u0131mlar<\/h4>\n<p>*   <strong>Veritaban\u0131 Kurulumu:<\/strong> Dinamik web siteleri i\u00e7in genellikle bir veritaban\u0131 sunucusuna (\u00f6rne\u011fin MySQL\/MariaDB veya PostgreSQL) ihtiyac\u0131n\u0131z olacakt\u0131r.<br \/>\n*   <strong>PHP veya Di\u011fer Betik Dilleri:<\/strong> Web uygulamalar\u0131 geli\u015ftirmek i\u00e7in PHP, Python veya Ruby gibi betik dillerini Apache ile entegre etmeyi d\u00fc\u015f\u00fcnebilirsiniz.<br \/>\n*   <strong>\u0130zleme ve G\u00fcnl\u00fck Analizi:<\/strong> Sunucunuzun performans\u0131n\u0131 ve g\u00fcvenli\u011fini izlemek i\u00e7in ara\u00e7lar (\u00f6rne\u011fin <code>logrotate<\/code>, <code>fail2ban<\/code>) kurmak faydal\u0131 olacakt\u0131r.<br \/>\n*   <strong>Geli\u015fmi\u015f Apache Yap\u0131land\u0131rmalar\u0131:<\/strong> Y\u00fck dengeleme, ters proxy veya daha karma\u015f\u0131k yeniden yazma kurallar\u0131 gibi geli\u015fmi\u015f \u00f6zelliklere g\u00f6z atabilirsiniz.<\/p>\n<p>Unutmay\u0131n, sunucu y\u00f6netimi s\u00fcrekli bir \u00f6\u011frenme s\u00fcrecidir ve g\u00fcvenlik g\u00fcncellemelerini takip etmek, g\u00fcnl\u00fck dosyalar\u0131n\u0131 d\u00fczenli olarak kontrol etmek ve yap\u0131land\u0131rmalar\u0131n\u0131z\u0131 optimize etmek her zaman \u00f6nemlidir.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi\nGiri\u015f\n\u0130nternet d\u00fcnyas\u0131n\u0131n temel ta\u015flar\u0131ndan biri olan web sunucular\u0131, kullan\u0131c\u0131lar\u0131n we","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-36065","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 Web Sunucusunu Debian 9&#039;a Y\u00fckleme Rehberi - 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\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache Web Sunucusunu Debian 9&#039;a Y\u00fckleme Rehberi\" \/>\n<meta property=\"og:description\" content=\"Apache Web Sunucusunu Debian 9&#039;a Y\u00fckleme Rehberi Giri\u015f \u0130nternet d\u00fcnyas\u0131n\u0131n temel ta\u015flar\u0131ndan biri olan web sunucular\u0131, kullan\u0131c\u0131lar\u0131n we\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-07T13:40:42+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=\"17 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi\",\"datePublished\":\"2025-12-07T13:40:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\"},\"wordCount\":3024,\"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\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\",\"name\":\"Apache Web Sunucusunu Debian 9'a Y\u00fckleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-12-07T13:40:42+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi\"}]},{\"@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 Web Sunucusunu Debian 9'a Y\u00fckleme Rehberi - 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\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"Apache Web Sunucusunu Debian 9'a Y\u00fckleme Rehberi","og_description":"Apache Web Sunucusunu Debian 9'a Y\u00fckleme Rehberi Giri\u015f \u0130nternet d\u00fcnyas\u0131n\u0131n temel ta\u015flar\u0131ndan biri olan web sunucular\u0131, kullan\u0131c\u0131lar\u0131n we","og_url":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-12-07T13:40:42+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"17 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi","datePublished":"2025-12-07T13:40:42+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/"},"wordCount":3024,"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\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/","name":"Apache Web Sunucusunu Debian 9'a Y\u00fckleme Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-12-07T13:40:42+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/apache-web-sunucusunu-debian-9a-yukleme-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Apache Web Sunucusunu Debian 9&#8217;a Y\u00fckleme Rehberi"}]},{"@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\/36065","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=36065"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36065\/revisions"}],"predecessor-version":[{"id":36066,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/36065\/revisions\/36066"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=36065"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=36065"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=36065"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}