{"id":34199,"date":"2025-11-12T20:41:39","date_gmt":"2025-11-12T17:41:39","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=34199"},"modified":"2025-11-12T20:41:39","modified_gmt":"2025-11-12T17:41:39","slug":"apache-sanal-hostlari-nedir-ve-neden-kullanilir","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/","title":{"rendered":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?"},"content":{"rendered":"<p><body><\/p>\n<h2>Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?<\/h2>\n<p>Bir web sunucusu, genellikle tek bir IP adresine sahiptir. Ancak g\u00fcn\u00fcm\u00fcz d\u00fcnyas\u0131nda, tek bir sunucu \u00fczerinde birden fazla web sitesi bar\u0131nd\u0131rmak olduk\u00e7a yayg\u0131n ve ekonomiktir. \u0130\u015fte tam da bu noktada <strong>Apache Sanal Hostlar\u0131 (Virtual Hosts)<\/strong> devreye girer. Sanal hostlar, Apache web sunucusunun tek bir fiziksel sunucu, IP adresi veya port \u00fczerinde birden fazla web sitesini (domaini) bar\u0131nd\u0131rmas\u0131na olanak tan\u0131yan bir \u00f6zelliktir.<\/p>\n<p>Bu rehberde, Ubuntu 13.10 i\u015fletim sistemi \u00fczerinde Apache sanal hostlar\u0131n\u0131 nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m \u00f6\u011freneceksiniz. Sanal hostlar sayesinde her bir web siteniz i\u00e7in ayr\u0131 bir dok\u00fcman k\u00f6k\u00fc (document root), hata g\u00fcnl\u00fckleri (error logs) ve eri\u015fim g\u00fcnl\u00fckleri (access logs) tan\u0131mlayabilirsiniz. Bu, kaynaklar\u0131 daha verimli kullanman\u0131z\u0131 sa\u011flarken, her sitenin birbirinden ba\u011f\u0131ms\u0131z \u00e7al\u0131\u015fmas\u0131na olanak tan\u0131r.<\/p>\n<h3>Sanal Host Kullanman\u0131n Avantajlar\u0131:<\/h3>\n<ul>\n<li><strong>Maliyet Verimlili\u011fi:<\/strong> Birden fazla sunucuya veya IP adresine ihtiya\u00e7 duymadan bir\u00e7ok web sitesini tek bir makinede bar\u0131nd\u0131rabilirsiniz.<\/li>\n<li><strong>Kaynak Verimlili\u011fi:<\/strong> Sunucunun donan\u0131m kaynaklar\u0131n\u0131 (CPU, RAM) daha etkin kullan\u0131r.<\/li>\n<li><strong>Kolay Y\u00f6netim:<\/strong> Her site i\u00e7in ayr\u0131 yap\u0131land\u0131rma dosyalar\u0131 sayesinde y\u00f6netimi basitle\u015ftirir.<\/li>\n<li><strong>Esneklik:<\/strong> Her siteye \u00f6zel ayarlar (PHP s\u00fcr\u00fcm\u00fc, mod\u00fcller vb.) tan\u0131mlayabilme potansiyeli sunar.<\/li>\n<\/ul>\n<h2>\u00d6n Gereksinimler ve Apache Kurulumu<\/h2>\n<p>Bu rehbere ba\u015flamadan \u00f6nce, Ubuntu 13.10 i\u015fletim sistemine sahip bir sunucuya veya sanal makineye ve root veya sudo yetkilerine sahip bir kullan\u0131c\u0131ya ihtiyac\u0131n\u0131z olacakt\u0131r. E\u011fer Apache web sunucusu hen\u00fcz kurulu de\u011filse, a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 izleyerek kurabilirsiniz.<\/p>\n<h3>Sistem G\u00fcncellemesi ve Apache Kurulumu<\/h3>\n<p>\u0130lk olarak, sisteminizin paket listesini g\u00fcncelleyelim ve mevcut paketleri y\u00fckseltelim:<\/p>\n<pre><code>\nsudo apt-get update\nsudo apt-get upgrade\n<\/code><\/pre>\n<p>\u015eimdi Apache web sunucusunu kural\u0131m:<\/p>\n<pre><code>\nsudo apt-get install apache2\n<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Apache servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in a\u015fa\u011f\u0131daki komutu kullanabilirsiniz:<\/p>\n<pre><code>\nsudo service apache2 status\n<\/code><\/pre>\n<p>Taray\u0131c\u0131n\u0131zda <code>http:\/\/localhost<\/code> veya sunucunuzun IP adresini ziyaret ederek Apache&#8217;nin varsay\u0131lan ho\u015f geldiniz sayfas\u0131n\u0131 g\u00f6rmeniz gerekir.<\/p>\n<h3>Web Sitesi Dizin Yap\u0131s\u0131 Olu\u015fturma<\/h3>\n<p>Her sanal host i\u00e7in ayr\u0131 bir dizin yap\u0131s\u0131 olu\u015fturmak iyi bir pratiktir. Bu, sitelerinizin dosyalar\u0131n\u0131 d\u00fczenli tutman\u0131za yard\u0131mc\u0131 olur. Genellikle <code>\/var\/www\/<\/code> dizini alt\u0131nda her site i\u00e7in \u00f6zel bir dizin olu\u015fturulur.<\/p>\n<p>\u00d6rnek olarak, <code>site1.com<\/code> ve <code>site2.com<\/code> ad\u0131nda iki farkl\u0131 web sitesi bar\u0131nd\u0131raca\u011f\u0131m\u0131z\u0131 varsayal\u0131m. Bu siteler i\u00e7in dizinleri ve i\u00e7indeki <code>public_html<\/code> alt dizinlerini olu\u015ftural\u0131m:<\/p>\n<pre><code>\nsudo mkdir -p \/var\/www\/site1.com\/public_html\nsudo mkdir -p \/var\/www\/site2.com\/public_html\n<\/code><\/pre>\n<p>Bu dizinlere Apache&#8217;nin eri\u015febilmesi i\u00e7in do\u011fru kullan\u0131c\u0131 ve grup izinlerini ayarlamam\u0131z gerekir. Apache genellikle <code>www-data<\/code> kullan\u0131c\u0131s\u0131 ve grubu alt\u0131nda \u00e7al\u0131\u015f\u0131r:<\/p>\n<pre><code>\nsudo chown -R www-data:www-data \/var\/www\/site1.com\nsudo chown -R www-data:www-data \/var\/www\/site2.com\nsudo chmod -R 755 \/var\/www\/site1.com\nsudo chmod -R 755 \/var\/www\/site2.com\n<\/code><\/pre>\n<p>\u015eimdi her sitenin <code>public_html<\/code> dizinine basit birer <code>index.html<\/code> dosyas\u0131 olu\u015ftural\u0131m. Bu dosyalar, sanal hostlar\u0131n do\u011fru \u00e7al\u0131\u015f\u0131p \u00e7al\u0131\u015fmad\u0131\u011f\u0131n\u0131 test etmemize yard\u0131mc\u0131 olacakt\u0131r.<\/p>\n<p><code>site1.com<\/code> i\u00e7in:<\/p>\n<pre><code>\nsudo nano \/var\/www\/site1.com\/public_html\/index.html\n<\/code><\/pre>\n<p>\u0130\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>\n<!DOCTYPE html>\n<html>\n<head>\n    <title>site1.com - Sanal Host \u00c7al\u0131\u015f\u0131yor!<\/title>\n<\/head>\n<body>\n    <h1>site1.com Sanal Host Ba\u015far\u0131yla Kuruldu!<\/h1>\n    <p>Bu sayfa site1.com i\u00e7in Apache sanal hostu taraf\u0131ndan sunulmaktad\u0131r.<\/p>\n<\/body>\n<\/html>\n<\/code><\/pre>\n<p>Kaydedin ve kapat\u0131n (Ctrl+O, Enter, Ctrl+X).<\/p>\n<p>Ayn\u0131 \u015fekilde <code>site2.com<\/code> i\u00e7in de bir <code>index.html<\/code> dosyas\u0131 olu\u015ftural\u0131m:<\/p>\n<pre><code>\nsudo nano \/var\/www\/site2.com\/public_html\/index.html\n<\/code><\/pre>\n<p>\u0130\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code>\n<!DOCTYPE html>\n<html>\n<head>\n    <title>site2.com - Sanal Host \u00c7al\u0131\u015f\u0131yor!<\/title>\n<\/head>\n<body>\n    <h1>site2.com Sanal Host Ba\u015far\u0131yla Kuruldu!<\/h1>\n    <p>Bu sayfa site2.com i\u00e7in Apache sanal hostu taraf\u0131ndan sunulmaktad\u0131r.<\/p>\n<\/body>\n<\/html>\n<\/code><\/pre>\n<p>Kaydedin ve kapat\u0131n.<\/p>\n<h2>Sanal Host Olu\u015fturma ve Yap\u0131land\u0131rma<\/h2>\n<p>Apache&#8217;de sanal host yap\u0131land\u0131rma dosyalar\u0131 genellikle <code>\/etc\/apache2\/sites-available\/<\/code> dizininde bulunur. Bu dizinde her bir sanal host i\u00e7in ayr\u0131 bir yap\u0131land\u0131rma dosyas\u0131 olu\u015fturaca\u011f\u0131z. Daha sonra bu dosyalar\u0131 <code>a2ensite<\/code> arac\u0131yla etkinle\u015ftirece\u011fiz.<\/p>\n<h3>site1.com \u0130\u00e7in Sanal Host Dosyas\u0131 Olu\u015fturma<\/h3>\n<p>Varsay\u0131lan Apache yap\u0131land\u0131rma dosyas\u0131n\u0131 kopyalayarak ba\u015flayabiliriz. Ubuntu 13.10&#8217;da bu dosya genellikle <code>default<\/code> veya <code>000-default.conf<\/code> olarak adland\u0131r\u0131l\u0131r. Biz <code>default<\/code> dosyas\u0131n\u0131 kullanaca\u011f\u0131z.<\/p>\n<pre><code>\nsudo cp \/etc\/apache2\/sites-available\/default \/etc\/apache2\/sites-available\/site1.com.conf\n<\/code><\/pre>\n<p>\u015eimdi yeni olu\u015fturdu\u011fumuz <code>site1.com.conf<\/code> dosyas\u0131n\u0131 d\u00fczenleyelim:<\/p>\n<pre><code>\nsudo nano \/etc\/apache2\/sites-available\/site1.com.conf\n<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7eri\u011fini a\u015fa\u011f\u0131daki gibi g\u00fcncelleyin (mevcut i\u00e7eri\u011fi silip bunu yap\u0131\u015ft\u0131rabilirsiniz):<\/p>\n<pre><code>\n<VirtualHost *:80>\n    ServerAdmin webmaster@site1.com\n    ServerName site1.com\n    ServerAlias www.site1.com\n    DocumentRoot \/var\/www\/site1.com\/public_html\n\n    <Directory \/var\/www\/site1.com\/public_html>\n        Options Indexes FollowSymLinks MultiViews\n        AllowOverride All\n        Order allow,deny\n        allow from all\n    <\/Directory>\n\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n<\/VirtualHost>\n<\/code><\/pre>\n<p>Kaydedin ve kapat\u0131n. \u015eimdi bu direktiflerin ne anlama geldi\u011fine bakal\u0131m:<\/p>\n<p><em>   <strong><code><VirtualHost <\/em>:80><\/code><\/strong>: Bu blok, sanal host tan\u0131m\u0131n\u0131n ba\u015flang\u0131c\u0131n\u0131 belirtir. <code>*:80<\/code> ifadesi, bu sanal hostun sunucunun t\u00fcm IP adresleri \u00fczerindeki 80 numaral\u0131 porttan gelen HTTP isteklerini dinleyece\u011fini g\u00f6sterir.<br \/>\n*   <strong><code>ServerAdmin webmaster@site1.com<\/code><\/strong>: Bu, sitenizle ilgili hata mesajlar\u0131nda g\u00f6r\u00fcnt\u00fclenecek y\u00f6netici e-posta adresidir.<br \/>\n*   <strong><code>ServerName site1.com<\/code><\/strong>: Bu, sanal hostun birincil alan ad\u0131d\u0131r. Apache, bu alan ad\u0131na gelen istekleri bu sanal hosta y\u00f6nlendirecektir.<br \/>\n*   <strong><code>ServerAlias www.site1.com<\/code><\/strong>: Bu, birincil alan ad\u0131n\u0131n alternatif adlar\u0131d\u0131r. \u00d6rne\u011fin, kullan\u0131c\u0131lar <code>www.site1.com<\/code> yazd\u0131\u011f\u0131nda da bu sanal hosta y\u00f6nlendirilecektir.<br \/>\n*   <strong><code>DocumentRoot \/var\/www\/site1.com\/public_html<\/code><\/strong>: Bu, web sitesinin dosyalar\u0131n\u0131n bulundu\u011fu k\u00f6k dizinidir.<br \/>\n*   <strong><code><Directory \/var\/www\/site1.com\/public_html> ... <\/Directory><\/code><\/strong>: Bu blok, belirtilen dizin i\u00e7in \u00f6zel ayarlar tan\u0131mlar.<br \/>\n    *   <strong><code>Options Indexes FollowSymLinks MultiViews<\/code><\/strong>: Dizin listeleme, sembolik ba\u011flant\u0131lar\u0131 takip etme gibi se\u00e7enekleri etkinle\u015ftirir.<br \/>\n    *   <strong><code>AllowOverride All<\/code><\/strong>: <code>.htaccess<\/code> dosyalar\u0131n\u0131n bu dizinde Apache ayarlar\u0131n\u0131 ge\u00e7ersiz k\u0131lmas\u0131na izin verir. Bu, WordPress gibi CMS&#8217;ler i\u00e7in genellikle gereklidir.<br \/>\n    *   <strong><code>Order allow,deny<\/code><\/strong> ve <strong><code>allow from all<\/code><\/strong>: Bu, Apache 2.2 ve \u00f6nceki s\u00fcr\u00fcmlerde eri\u015fim kontrol\u00fc i\u00e7in kullan\u0131l\u0131r. T\u00fcm IP adreslerinden eri\u015fime izin verir.<br \/>\n*   <strong><code>ErrorLog ${APACHE_LOG_DIR}\/error.log<\/code><\/strong>: Bu sanal hosta ait hata g\u00fcnl\u00fcklerinin kaydedilece\u011fi dosyay\u0131 belirtir.<br \/>\n*   <strong><code>CustomLog ${APACHE_LOG_DIR}\/access.log combined<\/code><\/strong>: Bu sanal hosta ait eri\u015fim g\u00fcnl\u00fcklerinin kaydedilece\u011fi dosyay\u0131 ve format\u0131 belirtir.<\/p>\n<h3>site2.com \u0130\u00e7in Sanal Host Dosyas\u0131 Olu\u015fturma<\/h3>\n<p>Ayn\u0131 ad\u0131mlar\u0131 <code>site2.com<\/code> i\u00e7in de tekrarlayal\u0131m:<\/p>\n<pre><code>\nsudo cp \/etc\/apache2\/sites-available\/default \/etc\/apache2\/sites-available\/site2.com.conf\nsudo nano \/etc\/apache2\/sites-available\/site2.com.conf\n<\/code><\/pre>\n<p>Dosyan\u0131n i\u00e7eri\u011fini a\u015fa\u011f\u0131daki gibi g\u00fcncelleyin:<\/p>\n<pre><code>\n<VirtualHost *:80>\n    ServerAdmin webmaster@site2.com\n    ServerName site2.com\n    ServerAlias www.site2.com\n    DocumentRoot \/var\/www\/site2.com\/public_html\n\n    <Directory \/var\/www\/site2.com\/public_html>\n        Options Indexes FollowSymLinks MultiViews\n        AllowOverride All\n        Order allow,deny\n        allow from all\n    <\/Directory>\n\n    ErrorLog ${APACHE_LOG_DIR}\/error.log\n    CustomLog ${APACHE_LOG_DIR}\/access.log combined\n<\/VirtualHost>\n<\/code><\/pre>\n<p>Kaydedin ve kapat\u0131n.<\/p>\n<h3>Sanal Hostlar\u0131 Etkinle\u015ftirme ve Apache&#8217;yi Yeniden Ba\u015flatma<\/h3>\n<p>Sanal host yap\u0131land\u0131rma dosyalar\u0131n\u0131 olu\u015fturduktan sonra, Apache&#8217;nin bunlar\u0131 tan\u0131mas\u0131 i\u00e7in etkinle\u015ftirmemiz gerekir. Bunun i\u00e7in <code>a2ensite<\/code> (Apache 2 Enable Site) komutunu kullan\u0131r\u0131z:<\/p>\n<pre><code>\nsudo a2ensite site1.com.conf\nsudo a2ensite site2.com.conf\n<\/code><\/pre>\n<p>Bu komutlar, <code>\/etc\/apache2\/sites-enabled\/<\/code> dizinine yap\u0131land\u0131rma dosyalar\u0131n\u0131za sembolik ba\u011flant\u0131lar olu\u015fturur.<\/p>\n<p>Ayr\u0131ca, Apache&#8217;nin varsay\u0131lan sanal hostunu devre d\u0131\u015f\u0131 b\u0131rakmak iyi bir fikirdir. Bu, herhangi bir alan ad\u0131 e\u015fle\u015fmedi\u011finde sitelerinizin yanl\u0131\u015fl\u0131kla varsay\u0131lan i\u00e7eri\u011fi g\u00f6stermesini engeller:<\/p>\n<pre><code>\nsudo a2dissite default\n<\/code><\/pre>\n<p>Yap\u0131land\u0131rma de\u011fi\u015fikliklerinin etkili olmas\u0131 i\u00e7in Apache servisini yeniden ba\u015flatmam\u0131z gerekir:<\/p>\n<pre><code>\nsudo service apache2 restart\n<\/code><\/pre>\n<p>Herhangi bir hata olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in:<\/p>\n<pre><code>\nsudo apache2ctl configtest\n<\/code><\/pre>\n<p>E\u011fer &#8220;Syntax OK&#8221; \u00e7\u0131kt\u0131s\u0131n\u0131 g\u00f6r\u00fcrseniz, yap\u0131land\u0131rman\u0131zda bir sorun yok demektir.<\/p>\n<h2>Sistem Host Dosyas\u0131n\u0131 D\u00fczenleme ve Test Etme<\/h2>\n<p>\u015eu ana kadar olu\u015fturdu\u011fumuz <code>site1.com<\/code> ve <code>site2.com<\/code> alan adlar\u0131 ger\u00e7ek alan adlar\u0131 de\u011fildir ve DNS sunucular\u0131nda kay\u0131tl\u0131 de\u011fillerdir. Bu nedenle, bunlar\u0131 yerel olarak test etmek i\u00e7in bilgisayar\u0131n\u0131z\u0131n <code>hosts<\/code> dosyas\u0131n\u0131 d\u00fczenlemeniz gerekir. Bu dosya, belirli alan adlar\u0131n\u0131 belirli IP adreslerine e\u015flemenizi sa\u011flar.<\/p>\n<p><strong>Not:<\/strong> Bu ad\u0131m sadece sanal hostlar\u0131 kendi yerel makinenizden test etmek i\u00e7indir. Ger\u00e7ek bir alan ad\u0131 kullan\u0131yorsan\u0131z, DNS kay\u0131tlar\u0131n\u0131z\u0131 sunucunuzun IP adresine y\u00f6nlendirmeniz gerekecektir.<\/p>\n<p>Yerel makinenizin (Ubuntu sunucusunun kendisi veya testi yapaca\u011f\u0131n\u0131z ba\u015fka bir Linux\/macOS makinesi) <code>hosts<\/code> dosyas\u0131n\u0131 d\u00fczenleyelim:<\/p>\n<pre><code>\nsudo nano \/etc\/hosts\n<\/code><\/pre>\n<p>Windows kullan\u0131yorsan\u0131z, <code>C:\\Windows\\System32\\drivers\\etc\\hosts<\/code> yolunda bulunur ve Y\u00f6netici olarak a\u00e7\u0131lan bir metin d\u00fczenleyici ile d\u00fczenlenmelidir.<\/p>\n<p>Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin (sunucunuzun ger\u00e7ek IP adresi yerine 127.0.0.1 kullanabiliriz, \u00e7\u00fcnk\u00fc testi sunucunun kendisinden yapaca\u011f\u0131z):<\/p>\n<pre><code>\n127.0.0.1 site1.com\n127.0.0.1 www.site1.com\n127.0.0.1 site2.com\n127.0.0.1 www.site2.com\n<\/code><\/pre>\n<p>Kaydedin ve kapat\u0131n.<\/p>\n<p>\u015eimdi bir web taray\u0131c\u0131s\u0131 a\u00e7\u0131n ve a\u015fa\u011f\u0131daki adresleri ziyaret edin:<\/p>\n<p>*   <code>http:\/\/site1.com<\/code><br \/>\n*   <code>http:\/\/site2.com<\/code><\/p>\n<p>Her iki adrese gitti\u011finizde de ilgili sitenin <code>index.html<\/code> dosyas\u0131ndaki i\u00e7eri\u011fi g\u00f6rmeniz gerekir. E\u011fer farkl\u0131 i\u00e7erikler g\u00f6r\u00fcyorsan\u0131z, sanal host kurulumunuz ba\u015far\u0131l\u0131 bir \u015fekilde tamamlanm\u0131\u015ft\u0131r!<\/p>\n<h2>Sonu\u00e7 ve S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h2>\n<p>Bu rehberde, Ubuntu 13.10 \u00fczerinde Apache sanal hostlar\u0131n\u0131 nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 \u00f6\u011frendiniz. Art\u0131k tek bir sunucu \u00fczerinde birden fazla web sitesini g\u00fcvenli ve verimli bir \u015fekilde bar\u0131nd\u0131rabilirsiniz. Sanal hostlar, web geli\u015ftiricileri ve sistem y\u00f6neticileri i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r ve projelerinizi daha d\u00fczenli y\u00f6netmenize olanak tan\u0131r.<\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<h4>Sanal hostum \u00e7al\u0131\u015fm\u0131yor, ne yapmal\u0131y\u0131m?<\/h4>\n<p>Birka\u00e7 \u015feyi kontrol etmelisiniz:<\/p>\n<ul>\n<li><strong>Apache Yap\u0131land\u0131rma S\u00f6zdizimi:<\/strong> <code>sudo apache2ctl configtest<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak herhangi bir s\u00f6zdizimi hatas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol edin.<\/li>\n<li><strong>Sanal Host Etkin mi?:<\/strong> <code>sudo a2ensite your_site.conf<\/code> komutuyla sanal hostunuzu etkinle\u015ftirdi\u011finizden emin olun.<\/li>\n<li><strong>Apache Yeniden Ba\u015flat\u0131ld\u0131 m\u0131?:<\/strong> De\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in <code>sudo service apache2 restart<\/code> komutuyla Apache&#8217;yi yeniden ba\u015flatt\u0131\u011f\u0131n\u0131zdan emin olun.<\/li>\n<li><strong>Dizin \u0130zinleri:<\/strong> <code>DocumentRoot<\/code> dizininizin ve i\u00e7erdi\u011fi dosyalar\u0131n Apache&#8217;nin (www-data) okuma iznine sahip oldu\u011fundan emin olun (<code>sudo chown -R www-data:www-data \/var\/www\/your_site.com<\/code> ve <code>sudo chmod -R 755 \/var\/www\/your_site.com<\/code>).<\/li>\n<li><strong><code>DocumentRoot<\/code> Do\u011fru mu?:<\/strong> Yap\u0131land\u0131rma dosyan\u0131zdaki <code>DocumentRoot<\/code> yolunun do\u011fru oldu\u011fundan emin olun.<\/li>\n<li><strong><code>ServerName<\/code> ve <code>ServerAlias<\/code> Do\u011fru mu?:<\/strong> Alan adlar\u0131n\u0131z\u0131n do\u011fru yaz\u0131ld\u0131\u011f\u0131ndan emin olun.<\/li>\n<li><strong>Yerel Host Dosyas\u0131 (<code>\/etc\/hosts<\/code>):<\/strong> Test ediyorsan\u0131z, yerel host dosyan\u0131zdaki e\u015fle\u015fmenin do\u011fru oldu\u011fundan emin olun.<\/li>\n<\/ul>\n<h4>Neden <code>AllowOverride All<\/code> kullanmal\u0131y\u0131m?<\/h4>\n<p><code>AllowOverride All<\/code> direktifi, Apache&#8217;nin belirli bir dizindeki <code>.htaccess<\/code> dosyalar\u0131n\u0131 i\u015flemesine izin verir. WordPress, Joomla gibi i\u00e7erik y\u00f6netim sistemleri veya baz\u0131 PHP \u00e7er\u00e7eveleri, URL yeniden yazma (mod_rewrite) kurallar\u0131n\u0131 veya di\u011fer \u00f6zel yap\u0131land\u0131rmalar\u0131 <code>.htaccess<\/code> dosyalar\u0131 arac\u0131l\u0131\u011f\u0131yla y\u00f6netir. Bu direktifi etkinle\u015ftirmezseniz, bu t\u00fcr uygulamalar d\u00fczg\u00fcn \u00e7al\u0131\u015fmayabilir.<\/p>\n<h4>HTTPS (SSL) i\u00e7in sanal host nas\u0131l ayarlan\u0131r?<\/h4>\n<p>HTTPS i\u00e7in sanal host kurmak, mevcut yap\u0131land\u0131rman\u0131za ek olarak birka\u00e7 ad\u0131m gerektirir:<\/p>\n<ol>\n<li>SSL mod\u00fcl\u00fcn\u00fc etkinle\u015ftirin: <code>sudo a2enmod ssl<\/code><\/li>\n<li>Mevcut sanal host dosyan\u0131z\u0131 kopyalayarak veya d\u00fczenleyerek yeni bir <code>VirtualHost<\/code> blo\u011fu olu\u015fturun. Bu blok genellikle <code><VirtualHost *:443><\/code> \u015feklinde olur.<\/li>\n<li><code>SSLEngine on<\/code>, <code>SSLCertificateFile<\/code> ve <code>SSLCertificateKeyFile<\/code> direktiflerini ekleyerek SSL sertifika ve anahtar dosyalar\u0131n\u0131z\u0131n yolunu belirtin.<\/li>\n<li>Apache&#8217;yi yeniden ba\u015flat\u0131n.<\/li>\n<\/ol>\n<h4><code>ServerAlias<\/code> ne i\u015fe yarar?<\/h4>\n<p><code>ServerAlias<\/code>, birincil <code>ServerName<\/code> d\u0131\u015f\u0131nda, ayn\u0131 web sitesine y\u00f6nlendirilmesini istedi\u011finiz ek alan adlar\u0131n\u0131 veya alt alan adlar\u0131n\u0131 belirtmek i\u00e7in kullan\u0131l\u0131r. \u00d6rne\u011fin, <code>ServerName example.com<\/code> ve <code>ServerAlias www.example.com subdomain.example.com<\/code> \u015feklinde ayarlayarak, bu \u00fc\u00e7 adresin de ayn\u0131 web sitesini g\u00f6stermesini sa\u011flayabilirsiniz.<\/p>\n<h4><code>DocumentRoot<\/code> nedir?<\/h4>\n<p><code>DocumentRoot<\/code>, Apache&#8217;nin bir alan ad\u0131na gelen istekler i\u00e7in web sitesi dosyalar\u0131n\u0131 aramaya ba\u015flayaca\u011f\u0131 ana dizindir. Taray\u0131c\u0131da <code>http:\/\/yourdomain.com\/index.html<\/code> adresini yazd\u0131\u011f\u0131n\u0131zda, Apache bu dosyay\u0131 <code>DocumentRoot<\/code> dizininin i\u00e7inde arar. Bu, web sitenizin ana dizinidir.<\/p>\n<h4><code>sudo service apache2 restart<\/code> ile <code>sudo service apache2 reload<\/code> aras\u0131ndaki fark nedir?<\/h4>\n<ul>\n<li><strong><code>sudo service apache2 restart<\/code><\/strong>: Apache servisini tamamen durdurur ve sonra tekrar ba\u015flat\u0131r. Bu i\u015flem s\u0131ras\u0131nda k\u0131sa bir kesinti ya\u015fanabilir, mevcut ba\u011flant\u0131lar kesilir. Yeni mod\u00fcllerin etkinle\u015ftirilmesi veya \u00f6nemli yap\u0131land\u0131rma de\u011fi\u015fiklikleri i\u00e7in genellikle yeniden ba\u015flatma gereklidir.<\/li>\n<li><strong><code>sudo service apache2 reload<\/code><\/strong>: Apache&#8217;yi yap\u0131land\u0131rma dosyalar\u0131n\u0131 yeniden y\u00fcklemesi i\u00e7in bilgilendirir ancak servisi durdurup ba\u015flatmaz. Bu, mevcut ba\u011flant\u0131lar\u0131 kesmeden yeni yap\u0131land\u0131rmalar\u0131n uygulanmas\u0131n\u0131 sa\u011flar. \u00c7o\u011fu sanal host de\u011fi\u015fikli\u011fi gibi durumlar i\u00e7in <code>reload<\/code> yeterlidir ve daha az kesintiye neden olur.<\/li>\n<\/ul>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?\nBir web sunucusu, genellikle tek bir IP adresine sahiptir. Ancak g\u00fcn\u00fcm\u00fcz d\u00fcnyas\u0131nda, tek b","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":[874],"tags":[],"class_list":{"0":"post-34199","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-server","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 Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? - 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-sanal-hostlari-nedir-ve-neden-kullanilir\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?\" \/>\n<meta property=\"og:description\" content=\"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? Bir web sunucusu, genellikle tek bir IP adresine sahiptir. Ancak g\u00fcn\u00fcm\u00fcz d\u00fcnyas\u0131nda, tek b\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-12T17:41:39+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=\"11 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?\",\"datePublished\":\"2025-11-12T17:41:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\"},\"wordCount\":1764,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Server\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\",\"name\":\"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-12T17:41:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?\"}]},{\"@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 Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? - 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-sanal-hostlari-nedir-ve-neden-kullanilir\/","og_locale":"tr_TR","og_type":"article","og_title":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?","og_description":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? Bir web sunucusu, genellikle tek bir IP adresine sahiptir. Ancak g\u00fcn\u00fcm\u00fcz d\u00fcnyas\u0131nda, tek b","og_url":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-12T17:41:39+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"11 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?","datePublished":"2025-11-12T17:41:39+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/"},"wordCount":1764,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Server"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/","url":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/","name":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r? - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-12T17:41:39+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/apache-sanal-hostlari-nedir-ve-neden-kullanilir\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Apache Sanal Hostlar\u0131 Nedir ve Neden Kullan\u0131l\u0131r?"}]},{"@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\/34199","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=34199"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34199\/revisions"}],"predecessor-version":[{"id":34200,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34199\/revisions\/34200"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=34199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=34199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=34199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}