{"id":33616,"date":"2025-11-05T04:40:48","date_gmt":"2025-11-05T01:40:48","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=33616"},"modified":"2025-11-05T04:40:48","modified_gmt":"2025-11-05T01:40:48","slug":"centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/","title":{"rendered":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131"},"content":{"rendered":"<p><body><\/p>\n<h2>CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h2>\n<h3>Giri\u015f<\/h3>\n<p>Web uygulamalar\u0131n\u0131n temelini olu\u015fturan sunucu yaz\u0131l\u0131m y\u0131\u011f\u0131nlar\u0131, g\u00fcn\u00fcm\u00fcz dijital d\u00fcnyas\u0131nda hayati bir rol oynamaktad\u0131r. Bu y\u0131\u011f\u0131nlar aras\u0131nda en pop\u00fcler olanlardan biri LAMP (Linux, Apache, MySQL, PHP) iken, son y\u0131llarda performans ve kaynak verimlili\u011fi avantajlar\u0131 nedeniyle LEMP (Linux, Nginx, MySQL\/MariaDB, PHP) stack&#8217;i giderek daha fazla tercih edilmektedir. Nginx, hafif yap\u0131s\u0131 ve y\u00fcksek e\u015fzamanl\u0131 ba\u011flant\u0131lar\u0131 i\u015fleme yetene\u011fi sayesinde \u00f6zellikle y\u00fcksek trafikli web siteleri ve modern web uygulamalar\u0131 i\u00e7in ideal bir se\u00e7imdir.<\/p>\n<p>CentOS 7, kararl\u0131 ve g\u00fcvenilir bir i\u015fletim sistemi olmakla birlikte, paket y\u00f6neticisi (YUM) arac\u0131l\u0131\u011f\u0131yla sunulan yaz\u0131l\u0131m s\u00fcr\u00fcmleri genellikle kararl\u0131l\u0131k ve uzun vadeli destek amac\u0131yla biraz eski olabilir. Ancak modern web uygulamalar\u0131 genellikle daha yeni PHP, Nginx veya veritaban\u0131 s\u00fcr\u00fcmlerini gerektirir. \u0130\u015fte bu noktada Software Collections (SCL) devreye girer. SCL, sistemin temel paketlerini etkilemeden farkl\u0131, daha g\u00fcncel yaz\u0131l\u0131m s\u00fcr\u00fcmlerini ayn\u0131 sunucuya kurman\u0131za olanak tan\u0131yan bir Red Hat giri\u015fimdir. Bu sayede, CentOS 7&#8217;nin kararl\u0131l\u0131\u011f\u0131ndan \u00f6d\u00fcn vermeden en son teknolojileri kullanabiliriz.<\/p>\n<p>Bu makalede, CentOS 7 sunucusu \u00fczerinde Software Collections kullanarak nas\u0131l bir LEMP stack&#8217;i kurup yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m detayl\u0131 bir \u015fekilde anlataca\u011f\u0131z. Nginx&#8217;i web sunucusu olarak, MariaDB&#8217;yi veritaban\u0131 sunucusu olarak ve PHP-FPM&#8217;i (FastCGI Process Manager) PHP uygulamalar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kullanaca\u011f\u0131z. Amac\u0131m\u0131z, g\u00fcncel ve performansl\u0131 bir web uygulama ortam\u0131 olu\u015ftururken, sistem kararl\u0131l\u0131\u011f\u0131n\u0131 korumak ve gelecekteki g\u00fcncellemeleri kolayla\u015ft\u0131rmakt\u0131r.<\/p>\n<h3>\u00d6n Gereksinimler<\/h3>\n<p>Bu rehbere ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n gereksinimlerin kar\u015f\u0131land\u0131\u011f\u0131ndan emin olman\u0131z gerekmektedir:<\/p>\n<p>*   <strong>CentOS 7 Sunucusu:<\/strong> Temiz bir CentOS 7 kurulumu olan bir sanal makine veya fiziksel sunucuya ihtiyac\u0131n\u0131z olacakt\u0131r.<br \/>\n*   <strong>Root Eri\u015fimi veya Sudo Yetkileri:<\/strong> Kurulum ve yap\u0131land\u0131rma i\u015flemleri i\u00e7in root kullan\u0131c\u0131s\u0131 olarak oturum a\u00e7m\u0131\u015f olman\u0131z veya sudo yetkilerine sahip bir kullan\u0131c\u0131ya sahip olman\u0131z gerekmektedir.<br \/>\n*   <strong>\u0130nternet Ba\u011flant\u0131s\u0131:<\/strong> Paketleri indirmek ve kurmak i\u00e7in sunucunuzun aktif bir internet ba\u011flant\u0131s\u0131na sahip olmas\u0131 \u015fartt\u0131r.<br \/>\n*   <strong>Minimum Sistem Kaynaklar\u0131:<\/strong> En az 1 GB RAM ve 20 GB disk alan\u0131 \u00f6nerilir, ancak bu, bar\u0131nd\u0131raca\u011f\u0131n\u0131z uygulamalar\u0131n gereksinimlerine g\u00f6re de\u011fi\u015febilir.<\/p>\n<h3>Temel Sistem G\u00fcncelle\u015ftirmeleri ve Ara\u00e7lar<\/h3>\n<p>Kuruluma ba\u015flamadan \u00f6nce, sisteminizin g\u00fcncel oldu\u011fundan ve gerekli depolar\u0131n etkinle\u015ftirildi\u011finden emin olmal\u0131y\u0131z.<\/p>\n<p>1.  <strong>Sistemi G\u00fcncelleme:<\/strong><br \/>\n    \u0130lk ad\u0131m olarak, sunucunuzdaki t\u00fcm mevcut paketleri en son s\u00fcr\u00fcmlerine g\u00fcncelleyelim. Bu, olas\u0131 g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve yaz\u0131l\u0131m \u00e7ak\u0131\u015fmalar\u0131n\u0131 \u00f6nler.<\/p>\n<pre><code class=\"language-bash\">sudo yum update -y<\/code><\/pre>\n<p>2.  <strong>EPEL ve Software Collections (SCL) Depolar\u0131n\u0131 Etkinle\u015ftirme:<\/strong><br \/>\n    EPEL (Extra Packages for Enterprise Linux) ve SCL depolar\u0131, standart CentOS depolar\u0131nda bulunmayan ek paketleri ve daha g\u00fcncel yaz\u0131l\u0131m s\u00fcr\u00fcmlerini sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">sudo yum install epel-release centos-release-scl -y<\/code><\/pre>\n<p>    Bu komut, hem EPEL deposunu hem de SCL i\u00e7in gerekli olan <code>centos-release-scl<\/code> paketini kuracakt\u0131r.<\/p>\n<h3>Nginx Kurulumu<\/h3>\n<p>LEMP stack&#8217;imizin web sunucusu bile\u015feni olan Nginx&#8217;i Software Collections \u00fczerinden kuraca\u011f\u0131z. Bu sayede, CentOS 7&#8217;nin varsay\u0131lan Nginx s\u00fcr\u00fcm\u00fcnden daha g\u00fcncel bir s\u00fcr\u00fcm\u00fc kullanabiliriz.<\/p>\n<p>1.  <strong>Nginx SCL Paketini Se\u00e7me ve Kurma:<\/strong><br \/>\n    SCL depolar\u0131nda genellikle birden fazla Nginx s\u00fcr\u00fcm\u00fc bulunur (\u00f6rne\u011fin <code>rh-nginx118<\/code>, <code>rh-nginx120<\/code> vb.). Bu rehber i\u00e7in <code>rh-nginx118<\/code> (Nginx 1.18) s\u00fcr\u00fcm\u00fcn\u00fc kullanaca\u011f\u0131z, ancak siz mevcut en g\u00fcncel s\u00fcr\u00fcm\u00fc tercih edebilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo yum install rh-nginx118 -y<\/code><\/pre>\n<p>2.  <strong>Nginx Servisini Ba\u015flatma ve Otomatik Ba\u015flatmay\u0131 Etkinle\u015ftirme:<\/strong><br \/>\n    Kurulum tamamland\u0131ktan sonra Nginx servisini ba\u015flatmal\u0131 ve sunucu yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flamal\u0131y\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start rh-nginx118-nginx\n    sudo systemctl enable rh-nginx118-nginx<\/code><\/pre>\n<p>3.  <strong>Firewall Yap\u0131land\u0131rmas\u0131:<\/strong><br \/>\n    CentOS 7, varsay\u0131lan olarak <code>firewalld<\/code> ile gelir. Web sunucunuzun d\u0131\u015far\u0131dan eri\u015filebilir olmas\u0131 i\u00e7in HTTP (80) ve HTTPS (443) portlar\u0131na izin vermemiz gerekmektedir.<\/p>\n<pre><code class=\"language-bash\">sudo firewall-cmd --permanent --add-service=http\n    sudo firewall-cmd --permanent --add-service=https\n    sudo firewall-cmd --reload<\/code><\/pre>\n<p>    Bu komutlar, firewall kurallar\u0131n\u0131 kal\u0131c\u0131 olarak ekler ve de\u011fi\u015fikliklerin uygulanmas\u0131 i\u00e7in firewall&#8217;u yeniden y\u00fckler.<\/p>\n<p>4.  <strong>Nginx Durumunu Kontrol Etme:<\/strong><br \/>\n    Nginx&#8217;in do\u011fru bir \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in durumunu kontrol edebiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl status rh-nginx118-nginx<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131da <code>active (running)<\/code> ibaresini g\u00f6rmelisiniz. Ayr\u0131ca sunucunuzun IP adresini bir web taray\u0131c\u0131s\u0131na yazarak Nginx&#8217;in varsay\u0131lan &#8220;Welcome to Nginx!&#8221; sayfas\u0131n\u0131 g\u00f6rmeyi deneyebilirsiniz.<\/p>\n<h3>MariaDB Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Veritaban\u0131 sunucusu olarak MariaDB&#8217;yi kullanaca\u011f\u0131z. MariaDB, MySQL&#8217;in topluluk taraf\u0131ndan geli\u015ftirilen bir fork&#8217;udur ve y\u00fcksek uyumluluk, performans ve geli\u015fmi\u015f \u00f6zellikler sunar.<\/p>\n<p>1.  <strong>MariaDB SCL Paketini Se\u00e7me ve Kurma:<\/strong><br \/>\n    Yine SCL depolar\u0131ndan g\u00fcncel bir MariaDB s\u00fcr\u00fcm\u00fc se\u00e7ece\u011fiz. Bu rehber i\u00e7in <code>mariadb105<\/code> (MariaDB 10.5) s\u00fcr\u00fcm\u00fcn\u00fc kullanaca\u011f\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo yum install mariadb105-mariadb-server mariadb105-mariadb -y<\/code><\/pre>\n<p>    <code>mariadb105-mariadb-server<\/code> paketi veritaban\u0131 sunucusunu, <code>mariadb105-mariadb<\/code> ise istemci ara\u00e7lar\u0131n\u0131 i\u00e7erir.<\/p>\n<p>2.  <strong>MariaDB Servisini Ba\u015flatma ve Otomatik Ba\u015flatmay\u0131 Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl start mariadb105-mariadb\n    sudo systemctl enable mariadb105-mariadb<\/code><\/pre>\n<p>3.  <strong>MariaDB G\u00fcvenlik Yap\u0131land\u0131rmas\u0131:<\/strong><br \/>\n    Yeni kurulan MariaDB sunucunuzu g\u00fcvence alt\u0131na almak i\u00e7in <code>mysql_secure_installation<\/code> beti\u011fini \u00e7al\u0131\u015ft\u0131rman\u0131z \u015fiddetle tavsiye edilir. Bu betik, root \u015fifresi belirleme, anonim kullan\u0131c\u0131lar\u0131 kald\u0131rma, uzak root ba\u011flant\u0131lar\u0131n\u0131 devre d\u0131\u015f\u0131 b\u0131rakma ve test veritaban\u0131n\u0131 kald\u0131rma gibi g\u00fcvenlik ad\u0131mlar\u0131n\u0131 atman\u0131za yard\u0131mc\u0131 olur.<\/p>\n<p>    <strong>\u00d6nemli:<\/strong> SCL paketleri genellikle kendi ortamlar\u0131nda \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r. Bu y\u00fczden MariaDB g\u00fcvenlik beti\u011fini \u00e7al\u0131\u015ft\u0131rmak i\u00e7in <code>scl enable<\/code> komutunu kullanmal\u0131y\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo scl enable mariadb105 -- mysql_secure_installation<\/code><\/pre>\n<p>    Betik size bir dizi soru soracakt\u0131r:<br \/>\n    *   <strong>Enter current password for root (enter for none):<\/strong> \u0130lk kurulumda root \u015fifresi yoktur, bu y\u00fczden direkt Enter tu\u015funa bas\u0131n.<br \/>\n    *   <strong>Set root password? [Y\/n]:<\/strong> <code>Y<\/code> yaz\u0131p Enter&#8217;a bas\u0131n ve g\u00fc\u00e7l\u00fc bir root \u015fifresi belirleyin.<br \/>\n    *   <strong>Remove anonymous users? [Y\/n]:<\/strong> <code>Y<\/code> yaz\u0131p Enter&#8217;a bas\u0131n.<br \/>\n    *   <strong>Disallow root login remotely? [Y\/n]:<\/strong> \u00dcretim ortamlar\u0131 i\u00e7in <code>Y<\/code> yaz\u0131p Enter&#8217;a basmak g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<br \/>\n    *   <strong>Remove test database and access to it? [Y\/n]:<\/strong> <code>Y<\/code> yaz\u0131p Enter&#8217;a bas\u0131n.<br \/>\n    *   <strong>Reload privilege tables now? [Y\/n]:<\/strong> <code>Y<\/code> yaz\u0131p Enter&#8217;a bas\u0131n.<\/p>\n<p>4.  <strong>MariaDB Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl status mariadb105-mariadb<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131da <code>active (running)<\/code> ibaresini g\u00f6rmelisiniz.<\/p>\n<p>5.  <strong>Yeni Bir Veritaban\u0131 ve Kullan\u0131c\u0131 Olu\u015fturma (\u0130ste\u011fe Ba\u011fl\u0131):<\/strong><br \/>\n    Web uygulaman\u0131z i\u00e7in bir veritaban\u0131 ve kullan\u0131c\u0131 olu\u015fturmak isteyebilirsiniz. A\u015fa\u011f\u0131daki ad\u0131mlar, \u00f6rnek bir <code>webdb<\/code> veritaban\u0131 ve <code>webuser<\/code> kullan\u0131c\u0131s\u0131 olu\u015fturur.<\/p>\n<pre><code class=\"language-bash\">sudo scl enable mariadb105 -- mysql -u root -p<\/code><\/pre>\n<p>    MariaDB root \u015fifrenizi girin. Ard\u0131ndan a\u015fa\u011f\u0131daki SQL komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<pre><code class=\"language-sql\">CREATE DATABASE webdb;\n    CREATE USER 'webuser'@'localhost' IDENTIFIED BY 'GucluSifreBuraya';\n    GRANT ALL PRIVILEGES ON webdb.* TO 'webuser'@'localhost';\n    FLUSH PRIVILEGES;\n    EXIT;<\/code><\/pre>\n<p>    <code>GucluSifreBuraya<\/code> k\u0131sm\u0131n\u0131 kendi g\u00fc\u00e7l\u00fc \u015fifrenizle de\u011fi\u015ftirmeyi unutmay\u0131n.<\/p>\n<h3>PHP-FPM Kurulumu ve Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>PHP-FPM (FastCGI Process Manager), Nginx gibi web sunucular\u0131yla PHP uygulamalar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in kullan\u0131lan bir FastCGI uygulamas\u0131d\u0131r. Nginx, PHP kodunu do\u011frudan yorumlayamad\u0131\u011f\u0131 i\u00e7in PHP-FPM&#8217;e istekleri ileterek PHP kodunun i\u015flenmesini sa\u011flar.<\/p>\n<p>1.  <strong>PHP SCL Paketini ve Gerekli Mod\u00fclleri Se\u00e7me ve Kurma:<\/strong><br \/>\n    SCL depolar\u0131ndan g\u00fcncel bir PHP s\u00fcr\u00fcm\u00fc se\u00e7ece\u011fiz. Bu rehber i\u00e7in <code>rh-php74<\/code> (PHP 7.4) s\u00fcr\u00fcm\u00fcn\u00fc kullanaca\u011f\u0131z. Web uygulamalar\u0131n\u0131n \u00e7o\u011fu i\u00e7in temel PHP mod\u00fcllerini de kuraca\u011f\u0131z.<\/p>\n<pre><code class=\"language-bash\">sudo yum install rh-php74 rh-php74-php-fpm rh-php74-php-mysqlnd rh-php74-php-gd rh-php74-php-mbstring rh-php74-php-xml rh-php74-php-opcache -y<\/code><\/pre>\n<p>    *   <code>rh-php74<\/code>: Temel PHP paketi.<br \/>\n    *   <code>rh-php74-php-fpm<\/code>: PHP FastCGI Process Manager.<br \/>\n    *   <code>rh-php74-php-mysqlnd<\/code>: MySQL\/MariaDB veritaban\u0131 ba\u011flant\u0131s\u0131 i\u00e7in.<br \/>\n    *   <code>rh-php74-php-gd<\/code>: G\u00f6r\u00fcnt\u00fc i\u015fleme i\u00e7in (\u00f6rne\u011fin captcha, thumbnail).<br \/>\n    *   <code>rh-php74-php-mbstring<\/code>: \u00c7ok baytl\u0131 karakter dizileri i\u00e7in.<br \/>\n    *   <code>rh-php74-php-xml<\/code>: XML i\u015fleme i\u00e7in.<br \/>\n    *   <code>rh-php74-php-opcache<\/code>: PHP performans\u0131n\u0131 art\u0131rmak i\u00e7in bir \u00f6nbellekleme mod\u00fcl\u00fc.<br \/>\n    \u0130htiya\u00e7 duydu\u011funuz di\u011fer PHP mod\u00fcllerini de (\u00f6rn: <code>rh-php74-php-pdo<\/code>, <code>rh-php74-php-json<\/code>, <code>rh-php74-php-intl<\/code> vb.) bu a\u015famada kurabilirsiniz.<\/p>\n<p>2.  <strong>PHP-FPM Yap\u0131land\u0131rmas\u0131:<\/strong><br \/>\n    PHP-FPM&#8217;in Nginx ile d\u00fczg\u00fcn bir \u015fekilde ileti\u015fim kurabilmesi i\u00e7in baz\u0131 yap\u0131land\u0131rma de\u011fi\u015fiklikleri yapmam\u0131z gerekiyor. PHP-FPM yap\u0131land\u0131rma dosyalar\u0131 genellikle <code>\/etc\/opt\/rh\/rh-php74\/php-fpm.d\/www.conf<\/code> yolunda bulunur (kulland\u0131\u011f\u0131n\u0131z PHP s\u00fcr\u00fcm\u00fcne g\u00f6re yol de\u011fi\u015febilir).<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/opt\/rh\/rh-php74\/php-fpm.d\/www.conf<\/code><\/pre>\n<p>    A\u015fa\u011f\u0131daki de\u011fi\u015fiklikleri yap\u0131n:<\/p>\n<p>    *   <strong>Kullan\u0131c\u0131 ve Grup Ayarlar\u0131:<\/strong> PHP-FPM&#8217;in Nginx kullan\u0131c\u0131s\u0131 alt\u0131nda \u00e7al\u0131\u015fmas\u0131, dosya izinleri sorunlar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur.<\/p>\n<pre><code class=\"language-ini\">; user = apache\n        user = nginx\n        ; group = apache\n        group = nginx<\/code><\/pre>\n<p>    *   <strong>Dinleme Ayarlar\u0131:<\/strong> Nginx&#8217;in PHP-FPM ile ileti\u015fim kuraca\u011f\u0131 soket veya TCP portunu belirler. Genellikle Unix soketleri performans a\u00e7\u0131s\u0131ndan tercih edilir.<\/p>\n<pre><code class=\"language-ini\">; listen = 127.0.0.1:9000\n        listen = \/var\/opt\/rh\/rh-php74\/run\/php-fpm\/www.sock<\/code><\/pre>\n<p>    *   <strong>Soket \u0130zinleri:<\/strong> Soket dosyas\u0131na Nginx&#8217;in eri\u015febilmesi i\u00e7in izinleri ayarlay\u0131n.<\/p>\n<pre><code class=\"language-ini\">listen.owner = nginx\n        listen.group = nginx\n        listen.mode = 0660<\/code><\/pre>\n<p>    *   <strong>Process Manager (pm) Ayarlar\u0131:<\/strong> PHP-FPM s\u00fcre\u00e7lerinin nas\u0131l y\u00f6netilece\u011fini belirler. <code>dynamic<\/code> \u00e7o\u011fu senaryo i\u00e7in iyi bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/p>\n<pre><code class=\"language-ini\">pm = dynamic\n        pm.max_children = 50\n        pm.start_servers = 5\n        pm.min_spare_servers = 5\n        pm.max_spare_servers = 35<\/code><\/pre>\n<p>        Bu de\u011ferler, uygulaman\u0131z\u0131n trafik y\u00fck\u00fcne ve sunucunuzun kaynaklar\u0131na g\u00f6re ayarlanmal\u0131d\u0131r.<\/p>\n<p>    *   <strong><code>php.ini<\/code> Ayarlar\u0131 (\u0130ste\u011fe Ba\u011fl\u0131):<\/strong><br \/>\n        Temel PHP ayarlar\u0131n\u0131 <code>\/etc\/opt\/rh\/rh-php74\/php.ini<\/code> dosyas\u0131ndan yapabilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/opt\/rh\/rh-php74\/php.ini<\/code><\/pre>\n<p>        \u00d6nemli ayarlar:<br \/>\n        *   <code>memory_limit = 256M<\/code> (veya ihtiyac\u0131n\u0131za g\u00f6re)<br \/>\n        *   <code>upload_max_filesize = 32M<\/code> (veya ihtiyac\u0131n\u0131za g\u00f6re)<br \/>\n        *   <code>post_max_size = 32M<\/code> (veya ihtiyac\u0131n\u0131za g\u00f6re)<br \/>\n        *   <code>date.timezone = Europe\/Istanbul<\/code> (veya kendi saat diliminize g\u00f6re ayarlay\u0131n)<\/p>\n<p>3.  <strong>PHP-FPM Servisini Ba\u015flatma ve Otomatik Ba\u015flatmay\u0131 Etkinle\u015ftirme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl start rh-php74-php-fpm\n    sudo systemctl enable rh-php74-php-fpm<\/code><\/pre>\n<p>4.  <strong>PHP-FPM Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo systemctl status rh-php74-php-fpm<\/code><\/pre>\n<p>    \u00c7\u0131kt\u0131da <code>active (running)<\/code> ibaresini g\u00f6rmelisiniz.<\/p>\n<h3>Nginx ile PHP-FPM Entegrasyonu<\/h3>\n<p>\u015eimdi Nginx&#8217;i, gelen PHP isteklerini i\u015flemek \u00fczere PHP-FPM&#8217;e y\u00f6nlendirecek \u015fekilde yap\u0131land\u0131rmam\u0131z gerekiyor. Nginx yap\u0131land\u0131rma dosyalar\u0131 genellikle <code>\/etc\/opt\/rh\/rh-nginx118\/nginx\/conf.d\/<\/code> dizininde bulunur. Varsay\u0131lan yap\u0131land\u0131rma dosyas\u0131n\u0131 d\u00fczenleyebilir veya yeni bir sanal ana bilgisayar dosyas\u0131 olu\u015fturabilirsiniz. Biz varsay\u0131lan <code>default.conf<\/code> dosyas\u0131n\u0131 d\u00fczenleyece\u011fiz.<\/p>\n<p>1.  <strong>Nginx Yap\u0131land\u0131rma Dosyas\u0131n\u0131 D\u00fczenleme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sudo vi \/etc\/opt\/rh\/rh-nginx118\/nginx\/conf.d\/default.conf<\/code><\/pre>\n<p>    <code>server<\/code> blo\u011fu i\u00e7inde, PHP dosyalar\u0131n\u0131 i\u015flemek i\u00e7in yorum sat\u0131r\u0131 yap\u0131lm\u0131\u015f <code>location ~ \\.php$<\/code> blo\u011funu bulup a\u015fa\u011f\u0131daki gibi d\u00fczenleyin:<\/p>\n<pre><code class=\"language-nginx\">server {\n        listen       80;\n        server_name  localhost; # Buraya kendi alan ad\u0131n\u0131z\u0131 veya IP adresinizi yazabilirsiniz.\n\n        # Varsay\u0131lan k\u00f6k dizini ve index dosyalar\u0131\n        root         \/usr\/share\/nginx\/html; # Bu dizini kendi web k\u00f6k dizininize g\u00f6re de\u011fi\u015ftirebilirsiniz.\n        index        index.php index.html index.htm;\n\n        # Hata sayfalar\u0131\n        error_page 404 \/404.html;\n        location = \/40x.html {\n        }\n\n        error_page 500 502 503 504 \/50x.html;\n        location = \/50x.html {\n        }\n\n        # PHP dosyalar\u0131n\u0131 PHP-FPM'e iletmek i\u00e7in bu blo\u011fu etkinle\u015ftirin\n        location ~ \\.php$ {\n            # Web k\u00f6k dizininizi buraya da ekleyin (root direktifiyle ayn\u0131 olmal\u0131)\n            root           \/usr\/share\/nginx\/html;\n            fastcgi_pass   unix:\/var\/opt\/rh\/rh-php74\/run\/php-fpm\/www.sock; # PHP-FPM soket yolunuz\n            fastcgi_index  index.php;\n            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;\n            include        fastcgi_params;\n        }\n\n        # Dotfile'lar\u0131 (\u00f6rn: .htaccess) engelle\n        location ~ \/\\. {\n            deny all;\n        }\n    }<\/code><\/pre>\n<p>    <strong>\u00d6nemli Notlar:<\/strong><br \/>\n    *   <code>server_name<\/code>: Kendi alan ad\u0131n\u0131z\u0131 (\u00f6rne\u011fin <code>example.com<\/code>) veya sunucunuzun IP adresini buraya yaz\u0131n.<br \/>\n    *   <code>root<\/code>: Web sitenizin dosyalar\u0131n\u0131n bulundu\u011fu dizindir. Varsay\u0131lan olarak <code>\/usr\/share\/nginx\/html<\/code> kullan\u0131l\u0131r, ancak genellikle <code>\/var\/www\/html<\/code> gibi \u00f6zel bir dizin olu\u015fturulur. E\u011fer de\u011fi\u015ftirirseniz, <code>location ~ \\.php$<\/code> blo\u011fundaki <code>root<\/code> direktifini de ayn\u0131 \u015fekilde g\u00fcncellemeyi unutmay\u0131n.<br \/>\n    *   <code>fastcgi_pass<\/code>: PHP-FPM&#8217;in dinledi\u011fi soket yolunu veya TCP portunu belirtir. Bizim durumumuzda Unix soketi kullan\u0131yoruz.<\/p>\n<p>2.  <strong>Nginx Yap\u0131land\u0131rmas\u0131n\u0131 Test Etme:<\/strong><br \/>\n    Yap\u0131land\u0131rma dosyas\u0131nda s\u00f6zdizimi hatas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol etmek i\u00e7in Nginx&#8217;i test edebiliriz:<\/p>\n<pre><code class=\"language-bash\">sudo scl enable rh-nginx118 -- nginx -t<\/code><\/pre>\n<p>    E\u011fer her \u015fey yolundaysa, <code>test is successful<\/code> mesaj\u0131n\u0131 g\u00f6rmelisiniz. Herhangi bir hata varsa, hatay\u0131 d\u00fczeltin ve tekrar test edin.<\/p>\n<p>3.  <strong>Nginx&#8217;i Yeniden Ba\u015flatma:<\/strong><br \/>\n    Yap\u0131land\u0131rma de\u011fi\u015fikliklerinin etkili olmas\u0131 i\u00e7in Nginx servisini yeniden ba\u015flat\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart rh-nginx118-nginx<\/code><\/pre>\n<h3>LEMP Stack Testi<\/h3>\n<p>LEMP stack&#8217;inizin do\u011fru bir \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 do\u011frulamak i\u00e7in basit bir PHP bilgi dosyas\u0131 olu\u015ftural\u0131m.<\/p>\n<p>1.  <strong>Web K\u00f6k Dizinini Olu\u015fturma (Gerekirse):<\/strong><br \/>\n    E\u011fer Nginx yap\u0131land\u0131rman\u0131zda <code>\/usr\/share\/nginx\/html<\/code> d\u0131\u015f\u0131nda bir <code>root<\/code> dizini belirttiyseniz (\u00f6rne\u011fin <code>\/var\/www\/html<\/code>), bu dizini olu\u015fturman\u0131z gerekebilir.<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/var\/www\/html\n    sudo chown -R nginx:nginx \/var\/www\/html\n    sudo chmod -R 755 \/var\/www\/html<\/code><\/pre>\n<p>    Bu \u00f6rnekte, <code>\/var\/www\/html<\/code> dizinini olu\u015fturup Nginx kullan\u0131c\u0131s\u0131na sahip ve uygun izinleri veriyoruz. E\u011fer <code>\/usr\/share\/nginx\/html<\/code> kullan\u0131yorsan\u0131z bu ad\u0131m\u0131 atlayabilirsiniz.<\/p>\n<p>2.  <strong><code>info.php<\/code> Dosyas\u0131 Olu\u015fturma:<\/strong><br \/>\n    Nginx&#8217;in <code>root<\/code> dizinine (varsay\u0131lan olarak <code>\/usr\/share\/nginx\/html<\/code> veya sizin belirledi\u011finiz dizin) <code>info.php<\/code> ad\u0131nda bir dosya olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo vi \/usr\/share\/nginx\/html\/info.php<\/code><\/pre>\n<p>    Dosyan\u0131n i\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>    Kaydedin ve kapat\u0131n.<\/p>\n<p>3.  <strong>Taray\u0131c\u0131dan Kontrol Etme:<\/strong><br \/>\n    Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve sunucunuzun IP adresini veya alan ad\u0131n\u0131 takip eden <code>\/info.php<\/code> ile eri\u015fin:<br \/>\n    <code>http:\/\/sunucu_ip_adresi\/info.php<\/code><\/p>\n<p>    E\u011fer her \u015fey do\u011fru yap\u0131land\u0131r\u0131ld\u0131ysa, PHP&#8217;nin yap\u0131land\u0131rma bilgilerini i\u00e7eren bir sayfa g\u00f6rmelisiniz. Bu sayfa, Nginx&#8217;in PHP-FPM ile ba\u015far\u0131l\u0131 bir \u015fekilde ileti\u015fim kurdu\u011funu g\u00f6sterir. \u0130\u015finiz bitti\u011finde g\u00fcvenlik nedeniyle bu dosyay\u0131 sunucunuzdan silmeyi unutmay\u0131n: <code>sudo rm \/usr\/share\/nginx\/html\/info.php<\/code>.<\/p>\n<h3>G\u00fcvenlik \u0130pu\u00e7lar\u0131 ve Ek Yap\u0131land\u0131rmalar<\/h3>\n<p>Bir LEMP stack&#8217;i kurmak sadece ba\u015flang\u0131\u00e7t\u0131r. \u00dcretim ortam\u0131nda g\u00fcvenlik ve performans i\u00e7in ek yap\u0131land\u0131rmalar yapmak \u00f6nemlidir.<\/p>\n<h4>Nginx G\u00fcvenli\u011fi<\/h4>\n<p>*   <strong>Varsay\u0131lan Sunucu Bloklar\u0131n\u0131 Kald\u0131rma:<\/strong> \u00dcretimde kullanmad\u0131\u011f\u0131n\u0131z varsay\u0131lan sunucu bloklar\u0131n\u0131 (<code>default.conf<\/code> gibi) devre d\u0131\u015f\u0131 b\u0131rak\u0131n veya silin.<br \/>\n*   <strong>SSL\/TLS Yap\u0131land\u0131rmas\u0131:<\/strong> T\u00fcm web trafi\u011fini HTTPS \u00fczerinden \u015fifrelemek i\u00e7in Let&#8217;s Encrypt gibi \u00fccretsiz bir sertifika yetkilisi kullanarak SSL\/TLS yap\u0131land\u0131r\u0131n.<br \/>\n*   <strong>DDoS Korumas\u0131:<\/strong> Nginx&#8217;in <code>limit_req<\/code> mod\u00fcl\u00fc ile oran s\u0131n\u0131rlamas\u0131 (rate limiting) uygulayarak temel DDoS sald\u0131r\u0131lar\u0131na kar\u015f\u0131 koruma sa\u011flayabilirsiniz.<br \/>\n*   <strong>G\u00fcvenlik Ba\u015fl\u0131klar\u0131:<\/strong> <code>add_header<\/code> direktifi ile <code>X-Frame-Options<\/code>, <code>X-XSS-Protection<\/code>, <code>Content-Security-Policy<\/code> gibi g\u00fcvenlik ba\u015fl\u0131klar\u0131n\u0131 ekleyerek taray\u0131c\u0131 tabanl\u0131 sald\u0131r\u0131lar\u0131 azalt\u0131n.<\/p>\n<h4>MariaDB G\u00fcvenli\u011fi<\/h4>\n<p>*   <strong>Uzak Eri\u015fimi K\u0131s\u0131tlama:<\/strong> <code>mysql_secure_installation<\/code> beti\u011fi root kullan\u0131c\u0131s\u0131 i\u00e7in uzak eri\u015fimi k\u0131s\u0131tlam\u0131\u015ft\u0131r. Uygulama kullan\u0131c\u0131lar\u0131 i\u00e7in de <code>localhost<\/code> d\u0131\u015f\u0131ndan eri\u015fimi m\u00fcmk\u00fcn oldu\u011funca k\u0131s\u0131tlay\u0131n.<br \/>\n*   <strong>G\u00fc\u00e7l\u00fc \u015eifreler:<\/strong> T\u00fcm veritaban\u0131 kullan\u0131c\u0131lar\u0131 i\u00e7in karma\u015f\u0131k ve g\u00fc\u00e7l\u00fc \u015fifreler kullan\u0131n.<br \/>\n*   <strong>Ayr\u0131cal\u0131klar\u0131n K\u0131s\u0131tlanmas\u0131:<\/strong> Uygulamalar\u0131n\u0131z\u0131n ihtiya\u00e7 duydu\u011fundan daha fazla veritaban\u0131 ayr\u0131cal\u0131\u011f\u0131na sahip olmad\u0131\u011f\u0131ndan emin olun (\u00f6rne\u011fin, sadece <code>SELECT<\/code>, <code>INSERT<\/code>, <code>UPDATE<\/code>, <code>DELETE<\/code> yetkisi, <code>GRANT<\/code> yetkisi de\u011fil).<\/p>\n<h4>PHP-FPM G\u00fcvenli\u011fi<\/h4>\n<p>*   <strong><code>open_basedir<\/code> K\u0131s\u0131tlamalar\u0131:<\/strong> <code>php.ini<\/code> veya PHP-FPM havuz yap\u0131land\u0131rmas\u0131nda <code>open_basedir<\/code> direktifi ile PHP&#8217;nin dosya sistemine eri\u015fimini belirli dizinlerle k\u0131s\u0131tlay\u0131n. Bu, bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131n\u0131n k\u00f6t\u00fcye kullan\u0131lmas\u0131 durumunda zarar\u0131n boyutunu azalt\u0131r.<br \/>\n*   <strong><code>disable_functions<\/code>:<\/strong> Kullan\u0131lmayan veya potansiyel olarak tehlikeli PHP fonksiyonlar\u0131n\u0131 (<code>exec<\/code>, <code>shell_exec<\/code>, <code>passthru<\/code> vb.) <code>php.ini<\/code> dosyas\u0131nda devre d\u0131\u015f\u0131 b\u0131rak\u0131n.<br \/>\n*   <strong>Hata Raporlamay\u0131 Kapatma:<\/strong> \u00dcretim ortam\u0131nda <code>display_errors = Off<\/code> ve <code>log_errors = On<\/code> yaparak hata mesajlar\u0131n\u0131n kullan\u0131c\u0131ya g\u00f6sterilmesini engelleyin ve hatalar\u0131 log dosyalar\u0131na yazd\u0131r\u0131n.<br \/>\n*   <strong><code>expose_php = Off<\/code>:<\/strong> PHP s\u00fcr\u00fcm\u00fcn\u00fcz\u00fcn HTTP yan\u0131t ba\u015fl\u0131klar\u0131nda g\u00f6r\u00fcnmesini engelleyerek potansiyel sald\u0131rganlara bilgi vermeyi \u00f6nleyin.<\/p>\n<h4>SELinux Yap\u0131land\u0131rmas\u0131<\/h4>\n<p>CentOS&#8217;ta SELinux (Security-Enhanced Linux) varsay\u0131lan olarak etkindir ve ekstra bir g\u00fcvenlik katman\u0131 sa\u011flar. Ancak, yeni kurulan LEMP bile\u015fenlerinin d\u00fczg\u00fcn \u00e7al\u0131\u015fabilmesi i\u00e7in SELinux politikalar\u0131n\u0131 ayarlaman\u0131z gerekebilir. Aksi takdirde, Nginx&#8217;in PHP soketine veya web k\u00f6k dizininizdeki dosyalara eri\u015fiminde sorunlar ya\u015fayabilirsiniz.<\/p>\n<p>1.  <strong>Web Dizini \u0130\u00e7in SELinux Ba\u011flam\u0131n\u0131 Ayarlama:<\/strong><br \/>\n    E\u011fer <code>\/var\/www\/html<\/code> gibi \u00f6zel bir dizin kullan\u0131yorsan\u0131z, Nginx&#8217;in bu dizine eri\u015fmesine izin vermeniz gerekir.<\/p>\n<pre><code class=\"language-bash\">sudo semanage fcontext -a -t httpd_sys_content_t \"\/var\/www\/html(\/.*)?\"\n    sudo restorecon -Rv \/var\/www\/html<\/code><\/pre>\n<p>    Bu komutlar, <code>\/var\/www\/html<\/code> dizini ve alt\u0131ndaki t\u00fcm dosyalar i\u00e7in <code>httpd_sys_content_t<\/code> SELinux ba\u011flam\u0131n\u0131 ayarlar ve kal\u0131c\u0131 hale getirir.<\/p>\n<p>2.  <strong>Nginx&#8217;in PHP-FPM Soketine Eri\u015fimi:<\/strong><br \/>\n    Nginx&#8217;in PHP-FPM soketine eri\u015fimi genellikle <code>httpd_can_network_connect<\/code> veya benzeri bir boolean ile kontrol edilir. Ancak SCL kurulumlar\u0131nda bu genellikle otomatik olarak do\u011fru ayarlan\u0131r. E\u011fer <code>nginx<\/code> kullan\u0131c\u0131s\u0131 <code>php-fpm<\/code> soketine eri\u015femezse, loglarda (\u00f6rne\u011fin <code>\/var\/log\/audit\/audit.log<\/code>) SELinux hatalar\u0131 g\u00f6rebilirsiniz.<\/p>\n<p>    E\u011fer PHP-FPM soketine eri\u015fim sorunu ya\u015farsan\u0131z, <code>audit2allow<\/code> arac\u0131 ile \u00f6zel bir politika olu\u015fturman\u0131z gerekebilir veya ge\u00e7ici olarak SELinux&#8217;u <code>Permissive<\/code> moda al\u0131p test edebilirsiniz (\u00fcretim i\u00e7in \u00f6nerilmez).<\/p>\n<p>3.  <strong>MariaDB Ba\u011flant\u0131s\u0131 i\u00e7in SELinux (Gerekirse):<\/strong><br \/>\n    E\u011fer PHP uygulamas\u0131 MariaDB&#8217;ye ba\u011flanam\u0131yorsa ve SELinux loglar\u0131nda ba\u011flant\u0131 hatalar\u0131 g\u00f6r\u00fcyorsan\u0131z, <code>httpd_can_network_connect_db<\/code> boolean&#8217;\u0131n\u0131 etkinle\u015ftirmeniz gerekebilir:<\/p>\n<pre><code class=\"language-bash\">sudo setsebool -P httpd_can_network_connect_db 1<\/code><\/pre>\n<p>    Bu, web sunucusunun veritaban\u0131 portlar\u0131na a\u011f ba\u011flant\u0131lar\u0131 yapmas\u0131na izin verir.<\/p>\n<p>4.  <strong>SELinux Durumunu Kontrol Etme:<\/strong><\/p>\n<pre><code class=\"language-bash\">sestatus<\/code><\/pre>\n<p>    <code>Current mode: enforcing<\/code> olarak g\u00f6r\u00fcnmelidir. E\u011fer ge\u00e7ici olarak devre d\u0131\u015f\u0131 b\u0131rakmak isterseniz <code>sudo setenforce 0<\/code> komutunu kullanabilirsiniz, ancak bu sunucu yeniden ba\u015flat\u0131lana kadar ge\u00e7erlidir ve g\u00fcvenlik a\u00e7\u0131\u011f\u0131 olu\u015fturur.<\/p>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makalede, CentOS 7 i\u015fletim sistemi \u00fczerinde Software Collections&#8217;\u0131n g\u00fcc\u00fcn\u00fc kullanarak modern bir LEMP stack&#8217;i (Nginx, MariaDB, PHP-FPM) nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve yap\u0131land\u0131raca\u011f\u0131n\u0131z\u0131 ayr\u0131nt\u0131l\u0131 bir \u015fekilde ele ald\u0131k. Software Collections sayesinde, CentOS&#8217;un kararl\u0131l\u0131\u011f\u0131ndan \u00f6d\u00fcn vermeden g\u00fcncel yaz\u0131l\u0131m s\u00fcr\u00fcmlerini kullanma esnekli\u011fine sahip olduk.<\/p>\n<p>Ba\u015far\u0131l\u0131 bir \u015fekilde Nginx&#8217;i web sunucusu olarak, MariaDB&#8217;yi veritaban\u0131 sunucusu olarak ve PHP-FPM&#8217;i PHP kodu yorumlay\u0131c\u0131s\u0131 olarak kurup yap\u0131land\u0131rd\u0131k. Ayr\u0131ca, Nginx ile PHP-FPM aras\u0131ndaki entegrasyonu sa\u011flad\u0131k ve kurulumun do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 bir <code>phpinfo()<\/code> sayfas\u0131 ile test ettik. Son olarak, LEMP stack&#8217;inizin g\u00fcvenli\u011fini ve performans\u0131n\u0131 art\u0131rmak i\u00e7in \u00f6nemli g\u00fcvenlik ipu\u00e7lar\u0131n\u0131 ve SELinux yap\u0131land\u0131rmalar\u0131n\u0131 g\u00f6zden ge\u00e7irdik.<\/p>\n<p>Art\u0131k CentOS 7 sunucunuzda g\u00fc\u00e7l\u00fc, g\u00fcncel ve performans odakl\u0131 bir web uygulama ortam\u0131n\u0131z var. Bu temel kurulumun \u00fczerine, tercih etti\u011finiz bir CMS&#8217;i (WordPress, Joomla, Drupal) veya \u00f6zel bir PHP uygulamas\u0131n\u0131 da\u011f\u0131tabilirsiniz. Unutmay\u0131n ki, herhangi bir \u00fcretim ortam\u0131nda g\u00fcvenlik g\u00fcncellemelerini d\u00fczenli olarak yapmak ve sunucunuzu s\u00fcrekli izlemek hayati \u00f6nem ta\u015f\u0131r. Bu rehber, modern web uygulamalar\u0131n\u0131z\u0131 bar\u0131nd\u0131rmak i\u00e7in sa\u011flam bir temel sa\u011flamaktad\u0131r.<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131\nGiri\u015f\nWeb uygulamalar\u0131n\u0131n temelini olu\u015fturan sunucu y","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-33616","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>CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 - 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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131\" \/>\n<meta property=\"og:description\" content=\"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 Giri\u015f Web uygulamalar\u0131n\u0131n temelini olu\u015fturan sunucu y\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-05T01:40:48+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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131\",\"datePublished\":\"2025-11-05T01:40:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\"},\"wordCount\":2714,\"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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\",\"name\":\"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-05T01:40:48+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131\"}]},{\"@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":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 - 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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/","og_locale":"tr_TR","og_type":"article","og_title":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131","og_description":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 Giri\u015f Web uygulamalar\u0131n\u0131n temelini olu\u015fturan sunucu y","og_url":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-05T01:40:48+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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131","datePublished":"2025-11-05T01:40:48+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/"},"wordCount":2714,"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\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/","url":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/","name":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131 - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-05T01:40:48+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/centos-7-uzerinde-software-collections-kullanarak-lemp-stack-kurulumu-ve-yapilandirmasi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"CentOS 7 \u00dczerinde Software Collections Kullanarak LEMP Stack Kurulumu ve Yap\u0131land\u0131rmas\u0131"}]},{"@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\/33616","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=33616"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33616\/revisions"}],"predecessor-version":[{"id":33617,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33616\/revisions\/33617"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33616"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33616"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33616"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}