{"id":38667,"date":"2026-02-05T07:40:46","date_gmt":"2026-02-05T04:40:46","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=38667"},"modified":"2026-02-05T07:40:46","modified_gmt":"2026-02-05T04:40:46","slug":"apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/","title":{"rendered":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi"},"content":{"rendered":"<p><body><\/p>\n<h2>Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi<\/h2>\n<p>Sunucu y\u00f6netiminde, \u00f6zellikle web geli\u015ftirme ortamlar\u0131nda, farkl\u0131 projelerin farkl\u0131 PHP s\u00fcr\u00fcmlerine ihtiya\u00e7 duymas\u0131 yayg\u0131n bir senaryodur. Bir uygulaman\u0131n PHP 7.2 gerektirirken, ba\u015fka bir uygulaman\u0131n PHP 8.1&#8217;in sundu\u011fu yeni \u00f6zelliklerden faydalanmak istemesi bu duruma tipik bir \u00f6rnektir. Geleneksel olarak, sunucular genellikle tek bir PHP s\u00fcr\u00fcm\u00fcn\u00fc genel olarak \u00e7al\u0131\u015ft\u0131r\u0131r ve bu durum, farkl\u0131 PHP gereksinimleri olan uygulamalar\u0131n ayn\u0131 sunucuda bar\u0131nd\u0131r\u0131lmas\u0131n\u0131 zorla\u015ft\u0131r\u0131r. Ancak Apache web sunucusu ve PHP-FPM (FastCGI Process Manager) kombinasyonu sayesinde, Ubuntu 18.04 \u00fczerinde birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc sorunsuz bir \u015fekilde ayn\u0131 anda \u00e7al\u0131\u015ft\u0131rabilir, her sanal host (virtual host) i\u00e7in farkl\u0131 bir PHP s\u00fcr\u00fcm\u00fc atayarak bu sorunu \u00e7\u00f6zebilirsiniz.<\/p>\n<p>Bu kapsaml\u0131 teknik makalede, Ubuntu 18.04 i\u015fletim sistemi \u00fczerinde Apache ve PHP-FPM kullanarak birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m anlataca\u011f\u0131z. Bu rehber, hem geli\u015ftiriciler hem de sistem y\u00f6neticileri i\u00e7in, sunucular\u0131n\u0131 daha esnek ve verimli hale getirmek ad\u0131na \u00f6nemli bilgiler sunmaktad\u0131r.<\/p>\n<h3>Neden Birden Fazla PHP S\u00fcr\u00fcm\u00fcne \u0130htiya\u00e7 Duyar\u0131z?<\/h3>\n<p>Birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc ayn\u0131 sunucuda \u00e7al\u0131\u015ft\u0131rma ihtiyac\u0131 \u00e7e\u015fitli nedenlerden kaynaklan\u0131r:<\/p>\n<p>*   <strong>Farkl\u0131 Projeler \u0130\u00e7in Farkl\u0131 Gereksinimler:<\/strong> Her web projesi veya CMS (i\u00e7erik y\u00f6netim sistemi) farkl\u0131 PHP s\u00fcr\u00fcmlerini destekleyebilir veya belirli bir s\u00fcr\u00fcmle daha iyi performans g\u00f6sterebilir. \u00d6rne\u011fin, eski bir WordPress s\u00fcr\u00fcm\u00fc PHP 7.2 ile daha uyumlu olabilirken, Laravel&#8217;in en son s\u00fcr\u00fcm\u00fc PHP 8.1 veya daha yenisini gerektirebilir.<br \/>\n*   <strong>Eski Uygulamalar\u0131n Bak\u0131m\u0131:<\/strong> Baz\u0131 eski uygulamalar veya \u00f6zel yaz\u0131l\u0131mlar, g\u00fcncel PHP s\u00fcr\u00fcmleriyle uyumsuz olabilir ve daha eski bir PHP s\u00fcr\u00fcm\u00fcnde \u00e7al\u0131\u015fmaya devam etmeleri gerekebilir. Bu, uygulamay\u0131 yeniden yazmak veya g\u00fcncellemek yerine ge\u00e7ici bir \u00e7\u00f6z\u00fcm sunar.<br \/>\n*   <strong>Geli\u015ftirme ve Test Ortamlar\u0131:<\/strong> Geli\u015ftiriciler, yeni PHP s\u00fcr\u00fcmlerini veya g\u00fcncellemelerini test etmek isteyebilirler. \u00dcretim ortam\u0131n\u0131 etkilemeden farkl\u0131 PHP s\u00fcr\u00fcmlerini test etmek, uyumluluk sorunlar\u0131n\u0131 \u00f6nceden tespit etmeye yard\u0131mc\u0131 olur.<br \/>\n*   <strong>Ge\u00e7i\u015f S\u00fcre\u00e7leri:<\/strong> Bir uygulamay\u0131 daha yeni bir PHP s\u00fcr\u00fcm\u00fcne y\u00fckseltirken, eski s\u00fcr\u00fcmle yeni s\u00fcr\u00fcm aras\u0131nda bir ge\u00e7i\u015f d\u00f6nemi olabilir. Bu s\u00fcre\u00e7te her iki s\u00fcr\u00fcm\u00fc de ayn\u0131 anda \u00e7al\u0131\u015ft\u0131rabilmek, kesintisiz bir ge\u00e7i\u015f sa\u011flar.<br \/>\n*   <strong>G\u00fcvenlik ve Performans Optimizasyonu:<\/strong> Baz\u0131 uygulamalar belirli PHP s\u00fcr\u00fcmleriyle daha g\u00fcvenli veya daha performansl\u0131 \u00e7al\u0131\u015fabilir. Her uygulamaya \u00f6zel PHP s\u00fcr\u00fcm\u00fc atayarak bu optimizasyonlar\u0131 sa\u011flayabiliriz.<\/p>\n<h3>PHP-FPM Nedir ve Neden Kullanmal\u0131y\u0131z?<\/h3>\n<p>PHP-FPM (FastCGI Process Manager), PHP&#8217;nin FastCGI uygulamas\u0131n\u0131n geli\u015fmi\u015f bir versiyonudur. Web sunucular\u0131n\u0131n (Apache, Nginx vb.) PHP komut dosyalar\u0131n\u0131 i\u015flemesini sa\u011flayan bir aray\u00fczd\u00fcr. Geleneksel <code>mod_php<\/code> (Apache mod\u00fcl\u00fc olarak PHP) yakla\u015f\u0131m\u0131na k\u0131yasla bir\u00e7ok avantaj sunar:<\/p>\n<p>*   <strong>\u0130zolasyon ve G\u00fcvenlik:<\/strong> Her FPM havuzu (pool) kendi kullan\u0131c\u0131s\u0131 ve grubu alt\u0131nda \u00e7al\u0131\u015fabilir. Bu, farkl\u0131 web sitelerinin veya uygulamalar\u0131n birbirlerinin s\u00fcre\u00e7lerini etkilemesini engeller ve g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemli bir izolasyon sa\u011flar. Bir sitenin \u00e7\u00f6kmesi veya g\u00fcvenlik a\u00e7\u0131\u011f\u0131, di\u011fer siteleri do\u011frudan etkilemez.<br \/>\n*   <strong>Performans:<\/strong> <code>mod_php<\/code>, her Apache iste\u011fi i\u00e7in PHP yorumlay\u0131c\u0131s\u0131n\u0131 belle\u011fe y\u00fckler ve bu da bellek t\u00fcketimini art\u0131r\u0131r. PHP-FPM ise ayr\u0131 s\u00fcre\u00e7ler halinde \u00e7al\u0131\u015f\u0131r ve PHP yorumlay\u0131c\u0131s\u0131n\u0131 \u00f6nceden y\u00fckleyerek istekleri daha h\u0131zl\u0131 i\u015fler. Bu, \u00f6zellikle y\u00fcksek trafikli sitelerde performans\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131r\u0131r.<br \/>\n*   <strong>Esneklik ve \u00d6l\u00e7eklenebilirlik:<\/strong> PHP-FPM, her havuz i\u00e7in \u00f6zel PHP yap\u0131land\u0131rmalar\u0131na (bellek limitleri, zaman a\u015f\u0131m\u0131 ayarlar\u0131 vb.) izin verir. Ayr\u0131ca, ihtiya\u00e7 duyulan e\u015fzamanl\u0131 ba\u011flant\u0131 say\u0131s\u0131na g\u00f6re dinamik olarak s\u00fcre\u00e7leri y\u00f6netebilir, bu da sunucu kaynaklar\u0131n\u0131n daha verimli kullan\u0131lmas\u0131n\u0131 sa\u011flar.<br \/>\n*   <strong>\u00c7oklu PHP S\u00fcr\u00fcm\u00fc Deste\u011fi:<\/strong> En \u00f6nemlisi, PHP-FPM, birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc ayn\u0131 anda \u00e7al\u0131\u015ft\u0131rman\u0131za olanak tan\u0131r. Her PHP s\u00fcr\u00fcm\u00fc i\u00e7in ayr\u0131 bir FPM hizmeti ve havuzu olu\u015fturulabilir ve web sunucusu, gelen iste\u011fi hangi FPM havuzuna y\u00f6nlendirece\u011fini belirleyebilir.<\/p>\n<p>Bu avantajlar g\u00f6z \u00f6n\u00fcne al\u0131nd\u0131\u011f\u0131nda, modern web sunucusu yap\u0131land\u0131rmalar\u0131nda PHP-FPM, PHP&#8217;yi \u00e7al\u0131\u015ft\u0131rmak i\u00e7in tercih edilen y\u00f6ntem haline gelmi\u015ftir.<\/p>\n<h3>\u00d6n Ko\u015fullar<\/h3>\n<p>Bu rehbere ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n ko\u015fullar\u0131n yerine getirildi\u011finden emin olun:<\/p>\n<p>*   <strong>Ubuntu 18.04 Sunucu:<\/strong> Kurulumu yapaca\u011f\u0131n\u0131z bir Ubuntu 18.04 LTS sunucuya sahip olmal\u0131s\u0131n\u0131z.<br \/>\n*   <strong>SSH Eri\u015fimi ve Sudo Yetkileri:<\/strong> Sunucuya SSH ile ba\u011flanabilmeli ve <code>sudo<\/code> komutunu kullanarak y\u00f6netici ayr\u0131cal\u0131klar\u0131na sahip olmal\u0131s\u0131n\u0131z.<br \/>\n*   <strong>Apache2 Kurulumu:<\/strong> Apache web sunucusu kurulu ve \u00e7al\u0131\u015f\u0131r durumda olmal\u0131d\u0131r. E\u011fer kurulu de\u011filse, a\u015fa\u011f\u0131daki komutlarla kurabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt install apache2\n    sudo systemctl enable apache2\n    sudo systemctl start apache2<\/code><\/pre>\n<p>*   <strong>Temel Linux Komut Bilgisi:<\/strong> Terminalde temel komutlar\u0131 kullanma konusunda bilgi sahibi olmal\u0131s\u0131n\u0131z.<\/p>\n<h3>Ad\u0131m 1: Gerekli Paketlerin Kurulumu<\/h3>\n<p>\u0130lk ad\u0131m, sistemimizi g\u00fcncellemek ve birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc kolayca kurmam\u0131z\u0131 sa\u011flayacak ek depolar\u0131 (PPA) eklemektir. Ubuntu&#8217;nun varsay\u0131lan depolar\u0131 genellikle yaln\u0131zca bir veya iki kararl\u0131 PHP s\u00fcr\u00fcm\u00fcn\u00fc i\u00e7erirken, Ondrej&#8217;in PPA&#8217;s\u0131 (Personal Package Archive) PHP&#8217;nin bir\u00e7ok farkl\u0131 s\u00fcr\u00fcm\u00fcn\u00fc ve ilgili mod\u00fcllerini bar\u0131nd\u0131r\u0131r.<\/p>\n<p>1.  <strong>Sistem Paketlerini G\u00fcncelleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo apt update\n    sudo apt upgrade -y<\/code><\/pre>\n<p>2.  <strong>Ondrej&#8217;in PHP PPA&#8217;s\u0131n\u0131 Ekleme:<\/strong><br \/>\n    Bu PPA, PHP&#8217;nin \u00e7e\u015fitli s\u00fcr\u00fcmlerini ve ek mod\u00fcllerini i\u00e7erir.<\/p>\n<pre><code class=\"language-bash\">sudo apt install software-properties-common -y\n    sudo add-apt-repository ppa:ondrej\/php -y\n    sudo apt update<\/code><\/pre>\n<p>3.  <strong>\u0130htiya\u00e7 Duyulan PHP S\u00fcr\u00fcmlerini ve FPM Paketlerini Kurma:<\/strong><br \/>\n    \u015eimdi, \u00e7al\u0131\u015ft\u0131rmak istedi\u011finiz PHP s\u00fcr\u00fcmlerini ve bunlarla birlikte PHP-FPM paketlerini kurabiliriz. Bu rehberde \u00f6rnek olarak PHP 7.4 ve PHP 8.1 s\u00fcr\u00fcmlerini kullanaca\u011f\u0131z. Her s\u00fcr\u00fcm i\u00e7in FPM paketi (<code>phpX.Y-fpm<\/code>) ve yayg\u0131n olarak kullan\u0131lan baz\u0131 mod\u00fclleri (<code>phpX.Y-cli<\/code>, <code>phpX.Y-mysql<\/code>, <code>phpX.Y-gd<\/code>, <code>phpX.Y-curl<\/code>, <code>phpX.Y-mbstring<\/code>, <code>phpX.Y-xml<\/code>) kuraca\u011f\u0131z. \u0130htiya\u00e7lar\u0131n\u0131za g\u00f6re ek mod\u00fcller ekleyebilirsiniz.<\/p>\n<p>    <strong>PHP 7.4 Kurulumu:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo apt install php7.4-fpm php7.4-cli php7.4-mysql php7.4-gd php7.4-curl php7.4-mbstring php7.4-xml php7.4-zip -y<\/code><\/pre>\n<p>    <strong>PHP 8.1 Kurulumu:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo apt install php8.1-fpm php8.1-cli php8.1-mysql php8.1-gd php8.1-curl php8.1-mbstring php8.1-xml php8.1-zip -y<\/code><\/pre>\n<p>    Kurulum tamamland\u0131ktan sonra, her PHP-FPM hizmetinin \u00e7al\u0131\u015f\u0131r durumda oldu\u011fundan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status php7.4-fpm\n    sudo systemctl status php8.1-fpm<\/code><\/pre>\n<p>    Her iki hizmetin de <code>active (running)<\/code> durumunda oldu\u011funu g\u00f6rmelisiniz. E\u011fer \u00e7al\u0131\u015fm\u0131yorlarsa, <code>sudo systemctl start php7.4-fpm<\/code> ve <code>sudo systemctl start php8.1-fpm<\/code> komutlar\u0131yla ba\u015flatabilirsiniz. Ayr\u0131ca, sistem a\u00e7\u0131l\u0131\u015f\u0131nda otomatik ba\u015flamalar\u0131n\u0131 sa\u011flamak i\u00e7in <code>sudo systemctl enable php7.4-fpm<\/code> ve <code>sudo systemctl enable php8.1-fpm<\/code> komutlar\u0131n\u0131 kullanman\u0131z \u00f6nerilir.<\/p>\n<h3>Ad\u0131m 2: PHP-FPM Havuzlar\u0131n\u0131 Yap\u0131land\u0131rma<\/h3>\n<p>Her PHP-FPM s\u00fcr\u00fcm\u00fc kendi varsay\u0131lan havuz yap\u0131land\u0131rmas\u0131yla gelir. Bu havuzlar, PHP-FPM&#8217;in nas\u0131l \u00e7al\u0131\u015faca\u011f\u0131n\u0131, hangi kullan\u0131c\u0131 ve grup alt\u0131nda \u00e7al\u0131\u015faca\u011f\u0131n\u0131, hangi soketi kullanaca\u011f\u0131n\u0131 ve di\u011fer performans ayarlar\u0131n\u0131 belirler. Varsay\u0131lan olarak, her PHP s\u00fcr\u00fcm\u00fc i\u00e7in <code>\/etc\/php\/X.Y\/fpm\/pool.d\/www.conf<\/code> ad\u0131nda bir havuz dosyas\u0131 bulunur. Genellikle bu varsay\u0131lan yap\u0131land\u0131rma \u00e7o\u011fu durum i\u00e7in yeterlidir, ancak belirli bir uygulama i\u00e7in \u00f6zel ayarlar yapman\u0131z gerekirse bu dosyalar\u0131 d\u00fczenleyebilirsiniz.<\/p>\n<p>\u00d6rne\u011fin, <code>www.conf<\/code> dosyas\u0131nda <code>user<\/code> ve <code>group<\/code> ayarlar\u0131 FPM s\u00fcre\u00e7lerinin hangi kullan\u0131c\u0131 ve grup alt\u0131nda \u00e7al\u0131\u015faca\u011f\u0131n\u0131 belirler. Genellikle <code>www-data<\/code> olarak ayarlan\u0131r, bu da Apache&#8217;nin varsay\u0131lan kullan\u0131c\u0131s\u0131d\u0131r. Bu, dosya izinleri konusunda sorun ya\u015famaman\u0131z\u0131 sa\u011flar.<\/p>\n<p>Her FPM havuzunun kendine ait bir Unix soketi vard\u0131r. Bu soketler, web sunucusunun (Apache) PHP-FPM ile ileti\u015fim kurmas\u0131n\u0131 sa\u011flar. Varsay\u0131lan soket yollar\u0131 \u015funlard\u0131r:<br \/>\n*   PHP 7.4 i\u00e7in: <code>\/run\/php\/php7.4-fpm.sock<\/code><br \/>\n*   PHP 8.1 i\u00e7in: <code>\/run\/php\/php8.1-fpm.sock<\/code><\/p>\n<p>Bu soket yollar\u0131n\u0131 Apache yap\u0131land\u0131rmam\u0131zda kullanaca\u011f\u0131z.<\/p>\n<p><strong>\u00d6nemli Not:<\/strong> E\u011fer birden fazla siteyi farkl\u0131 PHP s\u00fcr\u00fcmleriyle \u00e7al\u0131\u015ft\u0131r\u0131yorsan\u0131z ve her site i\u00e7in farkl\u0131 FPM ayarlar\u0131 (\u00f6rne\u011fin bellek limiti, process say\u0131s\u0131) istiyorsan\u0131z, her site i\u00e7in ayr\u0131 bir FPM havuzu olu\u015fturman\u0131z gerekebilir. Bunu yapmak i\u00e7in, <code>www.conf<\/code> dosyas\u0131n\u0131 kopyalay\u0131p yeni bir isimle (\u00f6rne\u011fin <code>site1.conf<\/code>) kaydedebilir ve i\u00e7indeki <code>[www]<\/code> k\u0131sm\u0131n\u0131 <code>[site1]<\/code> gibi de\u011fi\u015ftirebilirsiniz. Ancak bu rehberde, varsay\u0131lan <code>www<\/code> havuzunu kullanarak devam edece\u011fiz, \u00e7\u00fcnk\u00fc Apache&#8217;nin <code>SetHandler<\/code> direktifi ile hangi sokete ba\u011flanaca\u011f\u0131n\u0131 belirleyece\u011fiz.<\/p>\n<h3>Ad\u0131m 3: Apache&#8217;yi PHP-FPM ile \u00c7al\u0131\u015facak \u015eekilde Yap\u0131land\u0131rma<\/h3>\n<p>Apache&#8217;nin PHP-FPM ile ileti\u015fim kurabilmesi i\u00e7in <code>mod_proxy_fcgi<\/code> mod\u00fcl\u00fcn\u00fc etkinle\u015ftirmemiz gerekir. Bu mod\u00fcl, Apache&#8217;nin FastCGI sunucular\u0131na (PHP-FPM gibi) istekleri iletmesini sa\u011flar.<\/p>\n<p>1.  <strong><code>mod_proxy_fcgi<\/code> Mod\u00fcl\u00fcn\u00fc Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo a2enmod proxy_fcgi<\/code><\/pre>\n<p>2.  <strong>Gerekirse Di\u011fer Apache Mod\u00fcllerini Etkinle\u015ftirme:<\/strong><br \/>\n    \u00c7o\u011fu web uygulamas\u0131 i\u00e7in <code>mod_rewrite<\/code> gibi mod\u00fcllere de ihtiya\u00e7 duyulur. E\u011fer etkin de\u011filse, onlar\u0131 da etkinle\u015ftirin:<\/p>\n<pre><code class=\"language-bash\">sudo a2enmod rewrite<\/code><\/pre>\n<p>    Di\u011fer mod\u00fcller i\u00e7in (<code>mod_headers<\/code>, <code>mod_expires<\/code> vb.) benzer \u015fekilde <code>a2enmod<\/code> komutunu kullanabilirsiniz.<\/p>\n<p>3.  <strong>Apache&#8217;yi Yeniden Ba\u015flatma:<\/strong><br \/>\n    Yap\u0131lan de\u011fi\u015fikliklerin etkili olmas\u0131 i\u00e7in Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart apache2<\/code><\/pre>\n<h3>Ad\u0131m 4: Sanal Hostlar\u0131 (Virtual Host) Yap\u0131land\u0131rma<\/h3>\n<p>\u015eimdi s\u0131ra, her web sitesi i\u00e7in ayr\u0131 bir sanal host yap\u0131land\u0131rmas\u0131 olu\u015fturmaya geldi. Her sanal host dosyas\u0131nda, o site i\u00e7in hangi PHP-FPM soketinin kullan\u0131laca\u011f\u0131n\u0131 belirleyece\u011fiz.<\/p>\n<p>Bu ad\u0131mda iki farkl\u0131 sanal host \u00f6rne\u011fi olu\u015fturaca\u011f\u0131z:<br \/>\n*   <code>site1.com<\/code>: PHP 7.4 kullanacak.<br \/>\n*   <code>site2.com<\/code>: PHP 8.1 kullanacak.<\/p>\n<p>\u00d6ncelikle, her site i\u00e7in bir belge k\u00f6k (DocumentRoot) dizini olu\u015ftural\u0131m:<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/var\/www\/site1.com\/public_html\nsudo mkdir -p \/var\/www\/site2.com\/public_html<\/code><\/pre>\n<p>Ard\u0131ndan, bu dizinlere <code>www-data<\/code> kullan\u0131c\u0131s\u0131n\u0131n sahip olmas\u0131n\u0131 sa\u011flayal\u0131m, b\u00f6ylece Apache ve PHP-FPM bu dosyalara eri\u015febilir ve yazabilir:<\/p>\n<pre><code class=\"language-bash\">sudo chown -R www-data:www-data \/var\/www\/site1.com\nsudo chown -R www-data:www-data \/var\/www\/site2.com<\/code><\/pre>\n<p><strong>\u00d6rnek 1: PHP 7.4 Kullanan site1.com \u0130\u00e7in Sanal Host Yap\u0131land\u0131rmas\u0131<\/strong><\/p>\n<p>1.  Yeni bir sanal host yap\u0131land\u0131rma dosyas\u0131 olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/site1.com.conf<\/code><\/pre>\n<p>2.  Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-apacheconf\"><VirtualHost *:80>\n        ServerAdmin webmaster@localhost\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\n            AllowOverride All\n            Require all granted\n        <\/Directory>\n\n        ErrorLog ${APACHE_LOG_DIR}\/site1.com_error.log\n        CustomLog ${APACHE_LOG_DIR}\/site1.com_access.log combined\n\n        <FilesMatch \\.php$>\n            # PHP 7.4 FPM'e y\u00f6nlendirme\n            SetHandler \"proxy:unix:\/run\/php\/php7.4-fpm.sock|fcgi:\/\/localhost\/\"\n        <\/FilesMatch>\n    <\/VirtualHost><\/code><\/pre>\n<p>    <strong>A\u00e7\u0131klama:<\/strong><br \/>\n    *   <code>ServerName<\/code> ve <code>ServerAlias<\/code>: Sitenizin alan adlar\u0131n\u0131 belirtir.<br \/>\n    *   <code>DocumentRoot<\/code>: Web sitenizin dosyalar\u0131n\u0131n bulundu\u011fu dizin.<br \/>\n    *   <code><Directory><\/code> blo\u011fu: Belge k\u00f6k dizini i\u00e7in eri\u015fim ve <code>AllowOverride All<\/code> ile <code>.htaccess<\/code> dosyalar\u0131n\u0131n kullan\u0131lmas\u0131na izin verir.<br \/>\n    *   <code><FilesMatch \\.php$><\/code>: Bu b\u00f6l\u00fcm, <code>.php<\/code> uzant\u0131l\u0131 t\u00fcm dosya isteklerini yakalar.<br \/>\n    *   <code>SetHandler \"proxy:unix:\/run\/php\/php7.4-fpm.sock|fcgi:\/\/localhost\/\"<\/code>: Bu kritik direktif, <code>.php<\/code> dosyalar\u0131na gelen t\u00fcm istekleri, belirtilen PHP 7.4 FPM soketi \u00fczerinden FastCGI protokol\u00fcn\u00fc kullanarak PHP-FPM hizmetine y\u00f6nlendirir. <code>fcgi:\/\/localhost\/<\/code> k\u0131sm\u0131, FPM&#8217;in yerel makinede \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve istekleri i\u015fleyece\u011fini belirtir.<\/p>\n<p>3.  Sanal hostu etkinle\u015ftirin ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite site1.com.conf\n    sudo systemctl restart apache2<\/code><\/pre>\n<p><strong>\u00d6rnek 2: PHP 8.1 Kullanan site2.com \u0130\u00e7in Sanal Host Yap\u0131land\u0131rmas\u0131<\/strong><\/p>\n<p>1.  Yeni bir sanal host yap\u0131land\u0131rma dosyas\u0131 olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/apache2\/sites-available\/site2.com.conf<\/code><\/pre>\n<p>2.  Dosyan\u0131n i\u00e7ine a\u015fa\u011f\u0131daki i\u00e7eri\u011fi yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-apacheconf\"><VirtualHost *:80>\n        ServerAdmin webmaster@localhost\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\n            AllowOverride All\n            Require all granted\n        <\/Directory>\n\n        ErrorLog ${APACHE_LOG_DIR}\/site2.com_error.log\n        CustomLog ${APACHE_LOG_DIR}\/site2.com_access.log combined\n\n        <FilesMatch \\.php$>\n            # PHP 8.1 FPM'e y\u00f6nlendirme\n            SetHandler \"proxy:unix:\/run\/php\/php8.1-fpm.sock|fcgi:\/\/localhost\/\"\n        <\/FilesMatch>\n    <\/VirtualHost><\/code><\/pre>\n<p>    Bu yap\u0131land\u0131rma, <code>site1.com<\/code> ile neredeyse ayn\u0131d\u0131r, tek fark <code>SetHandler<\/code> direktifinde <code>php8.1-fpm.sock<\/code> kullan\u0131lmas\u0131d\u0131r.<\/p>\n<p>3.  Sanal hostu etkinle\u015ftirin ve Apache&#8217;yi yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo a2ensite site2.com.conf\n    sudo systemctl restart apache2<\/code><\/pre>\n<h3>Ad\u0131m 5: Yap\u0131land\u0131rmay\u0131 Test Etme<\/h3>\n<p>Yap\u0131land\u0131rman\u0131n do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in her sitenin <code>public_html<\/code> dizinine basit bir <code>info.php<\/code> dosyas\u0131 olu\u015ftural\u0131m ve taray\u0131c\u0131 \u00fczerinden kontrol edelim.<\/p>\n<p>1.  <strong>site1.com i\u00e7in <code>info.php<\/code> olu\u015fturma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo nano \/var\/www\/site1.com\/public_html\/info.php<\/code><\/pre>\n<p>    \u0130\u00e7ine a\u015fa\u011f\u0131daki kodu yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-php\"><?php\n    phpinfo();\n    ?><\/code><\/pre>\n<p>2.  <strong>site2.com i\u00e7in <code>info.php<\/code> olu\u015fturma:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo nano \/var\/www\/site2.com\/public_html\/info.php<\/code><\/pre>\n<p>    \u0130\u00e7ine a\u015fa\u011f\u0131daki kodu yap\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-php\"><?php\n    phpinfo();\n    ?><\/code><\/pre>\n<p>3.  <strong>DNS veya Hosts Dosyas\u0131 Ayarlar\u0131:<\/strong><br \/>\n    E\u011fer ger\u00e7ek alan adlar\u0131 kullanm\u0131yorsan\u0131z, yerel bilgisayar\u0131n\u0131z\u0131n <code>hosts<\/code> dosyas\u0131n\u0131 d\u00fczenleyerek bu alan adlar\u0131n\u0131 sunucunuzun IP adresine y\u00f6nlendirmeniz gerekir.<br \/>\n    *   <strong>Linux\/macOS:<\/strong> <code>sudo nano \/etc\/hosts<\/code><br \/>\n    *   <strong>Windows:<\/strong> <code>C:\\Windows\\System32\\drivers\\etc\\hosts<\/code><br \/>\n    Dosyan\u0131n sonuna a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin (sunucunuzun IP adresini kendi sunucunuzun IP adresiyle de\u011fi\u015ftirin):<\/p>\n<pre><code class=\"language-\">SUNUCU_IP_ADRES\u0130 site1.com www.site1.com\n    SUNUCU_IP_ADRES\u0130 site2.com www.site2.com<\/code><\/pre>\n<p>4.  <strong>Taray\u0131c\u0131dan Kontrol Etme:<\/strong><br \/>\n    \u015eimdi bir web taray\u0131c\u0131s\u0131 a\u00e7\u0131n ve a\u015fa\u011f\u0131daki adreslere gidin:<br \/>\n    *   <code>http:\/\/site1.com\/info.php<\/code><br \/>\n    *   <code>http:\/\/site2.com\/info.php<\/code><\/p>\n<p>    <code>site1.com\/info.php<\/code> sayfas\u0131nda &#8220;PHP Version&#8221; k\u0131sm\u0131nda <strong>PHP 7.4.x<\/strong> g\u00f6rmelisiniz.<br \/>\n    <code>site2.com\/info.php<\/code> sayfas\u0131nda &#8220;PHP Version&#8221; k\u0131sm\u0131nda <strong>PHP 8.1.x<\/strong> g\u00f6rmelisiniz.<\/p>\n<p>    E\u011fer bu s\u00fcr\u00fcmleri do\u011fru bir \u015fekilde g\u00f6r\u00fcyorsan\u0131z, birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc Apache ve PHP-FPM kullanarak ba\u015far\u0131l\u0131 bir \u015fekilde yap\u0131land\u0131rm\u0131\u015fs\u0131n\u0131z demektir!<\/p>\n<h3>S\u0131k Kar\u015f\u0131la\u015f\u0131lan Sorunlar ve \u00c7\u00f6z\u00fcmleri<\/h3>\n<p>Yap\u0131land\u0131rma s\u0131ras\u0131nda veya sonras\u0131nda baz\u0131 sorunlarla kar\u015f\u0131la\u015fabilirsiniz. \u0130\u015fte en yayg\u0131n sorunlar ve olas\u0131 \u00e7\u00f6z\u00fcmleri:<\/p>\n<p>1.  <strong>500 Internal Server Error:<\/strong><br \/>\n    Bu, genellikle PHP veya sunucu yap\u0131land\u0131rmas\u0131nda bir hata oldu\u011funu g\u00f6sterir.<br \/>\n    *   <strong>Apache Hata Kay\u0131tlar\u0131n\u0131 Kontrol Edin:<\/strong> <code>\/var\/log\/apache2\/error.log<\/code> dosyas\u0131n\u0131 kontrol edin. PHP-FPM ile ilgili bir hata varsa, burada detaylar\u0131 g\u00f6rebilirsiniz.<br \/>\n    *   <strong>PHP-FPM Hata Kay\u0131tlar\u0131n\u0131 Kontrol Edin:<\/strong> Her PHP-FPM s\u00fcr\u00fcm\u00fcn\u00fcn kendi hata kay\u0131tlar\u0131 vard\u0131r. \u00d6rne\u011fin, PHP 7.4 i\u00e7in <code>\/var\/log\/php7.4-fpm.log<\/code> veya <code>\/var\/log\/php\/php7.4-fpm.log<\/code> gibi yollar\u0131 kontrol edin.<br \/>\n    *   <strong>FPM Hizmet Durumu:<\/strong> <code>sudo systemctl status phpX.Y-fpm<\/code> komutuyla ilgili FPM hizmetinin \u00e7al\u0131\u015f\u0131r durumda oldu\u011fundan emin olun.<br \/>\n    *   <strong>Dosya \u0130zinleri:<\/strong> Web sitenizin <code>DocumentRoot<\/code> dizinindeki dosya ve dizin izinlerinin do\u011fru oldu\u011fundan emin olun. Genellikle <code>www-data<\/code> kullan\u0131c\u0131s\u0131n\u0131n okuma\/yazma eri\u015fimi olmal\u0131d\u0131r (<code>sudo chown -R www-data:www-data \/var\/www\/site.com<\/code> ve <code>sudo chmod -R 755 \/var\/www\/site.com<\/code> gibi).<br \/>\n    *   <strong>PHP S\u00f6zdizimi Hatalar\u0131:<\/strong> <code>info.php<\/code> gibi basit bir dosya bile 500 hatas\u0131 veriyorsa, PHP kodunda s\u00f6zdizimi hatas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol edin.<\/p>\n<p>2.  <strong>PHP Dosyalar\u0131 Taray\u0131c\u0131ya \u0130ndiriliyor (\u00c7al\u0131\u015fm\u0131yor):<\/strong><br \/>\n    Bu, Apache&#8217;nin PHP dosyalar\u0131n\u0131 bir yorumlay\u0131c\u0131ya g\u00f6ndermek yerine do\u011frudan istemciye sundu\u011fu anlam\u0131na gelir.<br \/>\n    *   <strong><code>mod_proxy_fcgi<\/code> Etkin mi?<\/strong> <code>sudo a2enmod proxy_fcgi<\/code> komutunu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zdan ve Apache&#8217;yi yeniden ba\u015flatt\u0131\u011f\u0131n\u0131zdan emin olun.<br \/>\n    *   <strong><code>SetHandler<\/code> Direktifi Do\u011fru mu?<\/strong> Sanal host yap\u0131land\u0131rman\u0131zdaki <code><FilesMatch \\.php$><\/code> blo\u011funun ve <code>SetHandler<\/code> direktifinin do\u011fru yaz\u0131ld\u0131\u011f\u0131ndan emin olun. Soket yolu yanl\u0131\u015f olabilir.<\/p>\n<p>3.  <strong>FPM Soket Yolu Hatas\u0131 (e.g., &#8220;No such file or directory&#8221;):<\/strong><br \/>\n    Bu, Apache&#8217;nin <code>SetHandler<\/code> direktifinde belirtilen FPM soketini bulamad\u0131\u011f\u0131 anlam\u0131na gelir.<br \/>\n    *   <strong>Soket Yolu Do\u011fru mu?<\/strong> <code>\/run\/php\/phpX.Y-fpm.sock<\/code> yolunun do\u011fru oldu\u011fundan ve ilgili FPM hizmetinin (\u00f6rne\u011fin <code>php7.4-fpm<\/code>) \u00e7al\u0131\u015f\u0131r durumda oldu\u011fundan emin olun.<br \/>\n    *   <strong>FPM Hizmeti \u00c7al\u0131\u015f\u0131yor mu?<\/strong> <code>sudo systemctl status phpX.Y-fpm<\/code> komutuyla kontrol edin.<\/p>\n<p>4.  <strong>Apache Yeniden Ba\u015flam\u0131yor:<\/strong><br \/>\n    Apache yap\u0131land\u0131rma dosyas\u0131nda bir hata varsa, Apache yeniden ba\u015flamaz.<br \/>\n    *   <strong>Yap\u0131land\u0131rma Hatas\u0131 Kontrol\u00fc:<\/strong> <code>sudo apachectl configtest<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak yap\u0131land\u0131rma dosyalar\u0131n\u0131zdaki s\u00f6zdizimi hatalar\u0131n\u0131 kontrol edin. Bu komut, hatan\u0131n tam olarak nerede oldu\u011funu size s\u00f6yleyecektir.<br \/>\n    *   <strong>Loglar\u0131 Kontrol Edin:<\/strong> <code>\/var\/log\/apache2\/error.log<\/code> dosyas\u0131nda Apache&#8217;nin neden ba\u015flat\u0131lamad\u0131\u011f\u0131na dair ipu\u00e7lar\u0131 bulunabilir.<\/p>\n<p>5.  <strong><code>phpinfo()<\/code> Farkl\u0131 Bir PHP S\u00fcr\u00fcm\u00fc G\u00f6steriyor:<\/strong><br \/>\n    *   <strong>Sanal Host Do\u011fru Y\u00f6nlendiriyor mu?<\/strong> <code>ServerName<\/code> ve <code>ServerAlias<\/code> ayarlar\u0131n\u0131z\u0131n do\u011fru oldu\u011fundan ve taray\u0131c\u0131n\u0131zdan do\u011fru alan ad\u0131yla eri\u015fti\u011finizden emin olun.<br \/>\n    *   <strong>Hosts Dosyas\u0131\/DNS Do\u011fru mu?<\/strong> Yerel hosts dosyan\u0131z\u0131n veya DNS kay\u0131tlar\u0131n\u0131z\u0131n do\u011fru IP adresine i\u015faret etti\u011fini kontrol edin.<br \/>\n    *   <strong>Apache Yeniden Ba\u015flat\u0131ld\u0131 m\u0131?<\/strong> Sanal host yap\u0131land\u0131rmas\u0131n\u0131 de\u011fi\u015ftirdikten sonra Apache&#8217;yi yeniden ba\u015flatt\u0131\u011f\u0131n\u0131zdan emin olun (<code>sudo systemctl restart apache2<\/code>).<\/p>\n<h3>Performans ve G\u00fcvenlik \u0130pu\u00e7lar\u0131<\/h3>\n<p>\u00c7oklu PHP s\u00fcr\u00fcm\u00fc kurulumunuzu daha g\u00fcvenli ve performansl\u0131 hale getirmek i\u00e7in baz\u0131 ek ipu\u00e7lar\u0131:<\/p>\n<p>*   <strong>PHP-FPM Havuz Ayarlar\u0131n\u0131 Optimize Etme:<\/strong><br \/>\n    Her PHP-FPM havuzunun (<code>\/etc\/php\/X.Y\/fpm\/pool.d\/www.conf<\/code> veya \u00f6zel havuz dosyalar\u0131n\u0131z) performans ayarlar\u0131n\u0131 sunucunuzun kaynaklar\u0131na (RAM, CPU) ve web sitenizin trafik beklentilerine g\u00f6re ayarlay\u0131n. \u00d6nemli ayarlar \u015funlard\u0131r:<br \/>\n    *   <code>pm = dynamic<\/code>: S\u00fcre\u00e7 y\u00f6neticisinin dinamik olarak \u00e7ocuk s\u00fcre\u00e7leri olu\u015fturmas\u0131n\u0131 sa\u011flar.<br \/>\n    *   <code>pm.max_children<\/code>: Olu\u015fturulabilecek maksimum \u00e7ocuk s\u00fcre\u00e7 say\u0131s\u0131.<br \/>\n    *   <code>pm.start_servers<\/code>: Ba\u015flang\u0131\u00e7ta olu\u015fturulacak \u00e7ocuk s\u00fcre\u00e7 say\u0131s\u0131.<br \/>\n    *   <code>pm.min_spare_servers<\/code>: Bo\u015fta bekleyen minimum \u00e7ocuk s\u00fcre\u00e7 say\u0131s\u0131.<br \/>\n    *   <code>pm.max_spare_servers<\/code>: Bo\u015fta bekleyen maksimum \u00e7ocuk s\u00fcre\u00e7 say\u0131s\u0131.<br \/>\n    *   <code>pm.max_requests<\/code>: Bir \u00e7ocuk s\u00fcrecinin yeniden ba\u015flat\u0131lmadan \u00f6nce i\u015fleyece\u011fi maksimum istek say\u0131s\u0131 (bellek s\u0131z\u0131nt\u0131lar\u0131n\u0131 \u00f6nlemek i\u00e7in).<br \/>\n    Bu de\u011ferleri do\u011fru ayarlamak, bellek t\u00fcketimini optimize eder ve sunucunun a\u015f\u0131r\u0131 y\u00fcklenmesini engeller.<\/p>\n<p>*   <strong>G\u00fcvenlik \u0130\u00e7in Kullan\u0131c\u0131 \u0130zolasyonu:<\/strong><br \/>\n    M\u00fcmk\u00fcnse, her web sitesi i\u00e7in farkl\u0131 bir sistem kullan\u0131c\u0131s\u0131 ve grubuna sahip ayr\u0131 PHP-FPM havuzlar\u0131 olu\u015fturun. Bu, bir sitenin g\u00fcvenli\u011finin ihlal edilmesi durumunda di\u011fer sitelerin etkilenmesini zorla\u015ft\u0131r\u0131r. \u00d6rne\u011fin, <code>site1.com<\/code> i\u00e7in <code>site1user<\/code> ve <code>site2.com<\/code> i\u00e7in <code>site2user<\/code> olu\u015fturup FPM havuzlar\u0131nda <code>user = site1user<\/code> ve <code>group = site1user<\/code> \u015feklinde belirleyebilirsiniz.<\/p>\n<p>*   <strong><code>open_basedir<\/code> K\u0131s\u0131tlamalar\u0131:<\/strong><br \/>\n    Her FPM havuzu i\u00e7in <code>php_admin_value[open_basedir]<\/code> ayar\u0131n\u0131 kullanarak PHP komut dosyalar\u0131n\u0131n eri\u015febilece\u011fi dizinleri k\u0131s\u0131tlay\u0131n. \u00d6rne\u011fin:<\/p>\n<pre><code class=\"language-\">php_admin_value[open_basedir] = \/var\/www\/site1.com\/public_html:\/tmp<\/code><\/pre>\n<p>    Bu, bir sald\u0131rgan\u0131n sunucudaki di\u011fer dizinlere eri\u015fmesini engeller.<\/p>\n<p>*   <strong>Loglama:<\/strong><br \/>\n    Apache ve PHP-FPM loglar\u0131n\u0131 d\u00fczenli olarak kontrol edin. Hata loglar\u0131, sorunlar\u0131 tespit etmek ve gidermek i\u00e7in paha bi\u00e7ilmez bilgiler i\u00e7erir. Loglar\u0131 merkezi bir log y\u00f6netimi \u00e7\u00f6z\u00fcm\u00fcyle toplamak da faydal\u0131 olabilir.<\/p>\n<p>*   <strong>PHP S\u00fcr\u00fcmlerini G\u00fcncel Tutma:<\/strong><br \/>\n    Kulland\u0131\u011f\u0131n\u0131z PHP s\u00fcr\u00fcmlerini (\u00f6zellikle \u00fcretim ortam\u0131ndaki ana s\u00fcr\u00fcmleri) g\u00fcvenlik g\u00fcncellemeleri ve hata d\u00fczeltmeleri i\u00e7in d\u00fczenli olarak g\u00fcncelleyin. Ondrej&#8217;in PPA&#8217;s\u0131n\u0131 kulland\u0131\u011f\u0131n\u0131z i\u00e7in <code>sudo apt update && sudo apt upgrade<\/code> komutlar\u0131 PHP s\u00fcr\u00fcmlerinizi de g\u00fcncelleyecektir.<\/p>\n<p>*   <strong>HTTPS Kullan\u0131m\u0131:<\/strong><br \/>\n    T\u00fcm web siteleriniz i\u00e7in Let&#8217;s Encrypt gibi \u00fccretsiz SSL\/TLS sertifikalar\u0131 kullanarak HTTPS&#8217;i etkinle\u015ftirin. Bu, veri g\u00fcvenli\u011fini art\u0131r\u0131r ve SEO i\u00e7in de \u00f6nemlidir.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu detayl\u0131 rehberde, Ubuntu 18.04 i\u015fletim sistemi \u00fczerinde Apache web sunucusu ve PHP-FPM kullanarak birden fazla PHP s\u00fcr\u00fcm\u00fcn\u00fc ayn\u0131 anda nas\u0131l \u00e7al\u0131\u015ft\u0131raca\u011f\u0131n\u0131z\u0131 \u00f6\u011frendiniz. Bu yap\u0131land\u0131rma, farkl\u0131 PHP gereksinimleri olan \u00e7e\u015fitli web uygulamalar\u0131n\u0131 tek bir sunucuda bar\u0131nd\u0131rman\u0131za olanak tan\u0131yarak b\u00fcy\u00fck bir esneklik ve verimlilik sa\u011flar.<\/p>\n<p>PHP-FPM&#8217;in sa\u011flad\u0131\u011f\u0131 izolasyon, performans art\u0131\u015f\u0131 ve her sanal host i\u00e7in \u00f6zel PHP s\u00fcr\u00fcm\u00fc atayabilme yetene\u011fi, modern web sunucusu y\u00f6netimi i\u00e7in vazge\u00e7ilmez bir ara\u00e7t\u0131r. Gerek eski uygulamalar\u0131n bak\u0131m\u0131, gerekse yeni teknolojilerin test edilmesi ve farkl\u0131 projelerin ayn\u0131 sunucuda sorunsuz bir \u015fekilde \u00e7al\u0131\u015fmas\u0131 i\u00e7in bu y\u00f6ntem, sistem y\u00f6neticileri ve geli\u015ftiriciler i\u00e7in g\u00fc\u00e7l\u00fc bir \u00e7\u00f6z\u00fcm sunar. Ad\u0131mlar\u0131 dikkatlice takip ederek ve olas\u0131 sorun giderme y\u00f6ntemlerini kullanarak, kendi \u00e7oklu PHP s\u00fcr\u00fcm\u00fc ortam\u0131n\u0131z\u0131 kolayca kurabilirsiniz. Bu sayede sunucu kaynaklar\u0131n\u0131z\u0131 daha verimli kullan\u0131rken, her uygulaman\u0131n kendi \u00f6zel PHP ortam\u0131nda en iyi performans\u0131 g\u00f6stermesini sa\u011flayabilirsiniz.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi\nSunucu y\u00f6netiminde, \u00f6zellikle web geli\u015ftir","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":[1468],"tags":[],"class_list":{"0":"post-38667","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-ubuntu","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 ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma 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-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi\" \/>\n<meta property=\"og:description\" content=\"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi Sunucu y\u00f6netiminde, \u00f6zellikle web geli\u015ftir\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-05T04:40:46+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\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi\",\"datePublished\":\"2026-02-05T04:40:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\"},\"wordCount\":2981,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Ubuntu\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\",\"name\":\"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-05T04:40:46+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma 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 ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma 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-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi","og_description":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi Sunucu y\u00f6netiminde, \u00f6zellikle web geli\u015ftir","og_url":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-05T04:40:46+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\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi","datePublished":"2026-02-05T04:40:46+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/"},"wordCount":2981,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Ubuntu"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/","name":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma Rehberi - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-05T04:40:46+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/apache-ve-php-fpm-kullanarak-ubuntu-18-04-sunucuda-birden-fazla-php-surumunu-calistirma-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Apache ve PHP-FPM Kullanarak Ubuntu 18.04 Sunucuda Birden Fazla PHP S\u00fcr\u00fcm\u00fcn\u00fc \u00c7al\u0131\u015ft\u0131rma 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\/38667","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=38667"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38667\/revisions"}],"predecessor-version":[{"id":38668,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/38667\/revisions\/38668"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=38667"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=38667"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=38667"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}