{"id":34640,"date":"2025-11-20T03:40:47","date_gmt":"2025-11-20T00:40:47","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/?p=34640"},"modified":"2025-11-20T03:40:47","modified_gmt":"2025-11-20T00:40:47","slug":"ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/","title":{"rendered":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu"},"content":{"rendered":"<p><body><\/p>\n<h2>Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu<\/h2>\n<p>Bu kapsaml\u0131 teknik makalede, Ubuntu 16.04 sunucusu \u00fczerine LEMP (Linux, Nginx, MySQL, PHP) y\u0131\u011f\u0131n\u0131 kurarak WordPress&#8217;i nas\u0131l \u00e7al\u0131\u015f\u0131r hale getirece\u011finizi ad\u0131m ad\u0131m \u00f6\u011freneceksiniz. WordPress, d\u00fcnya genelinde milyonlarca web sitesine g\u00fc\u00e7 veren, kullan\u0131m\u0131 kolay ve olduk\u00e7a esnek bir i\u00e7erik y\u00f6netim sistemidir (CMS). LEMP ise, y\u00fcksek performansl\u0131 ve \u00f6l\u00e7eklenebilir web uygulamalar\u0131 i\u00e7in pop\u00fcler bir sunucu y\u0131\u011f\u0131n\u0131d\u0131r. Nginx&#8217;in Apache&#8217;ye k\u0131yasla daha hafif ve e\u015fzamanl\u0131 ba\u011flant\u0131lar\u0131 daha verimli y\u00f6netebilmesi, onu \u00f6zellikle trafik yo\u011funlu\u011fu y\u00fcksek siteler i\u00e7in ideal k\u0131lar. Ubuntu 16.04, uzun s\u00fcreli destek (LTS) sa\u011flayan eski bir s\u00fcr\u00fcm olsa da, bu rehber, belirli bir sistem gereksinimine sahip olan veya bu s\u00fcr\u00fcm\u00fc kullanmay\u0131 tercih eden kullan\u0131c\u0131lar i\u00e7in tasarlanm\u0131\u015ft\u0131r.<\/p>\n<h3>Giri\u015f ve \u00d6n Gereksinimler<\/h3>\n<p>WordPress&#8217;in g\u00fcc\u00fc, kullan\u0131c\u0131 dostu aray\u00fcz\u00fc, zengin eklenti ve tema ekosistemi ile gelirken, LEMP y\u0131\u011f\u0131n\u0131 bu g\u00fcc\u00fc h\u0131zl\u0131 ve g\u00fcvenilir bir altyap\u0131 ile destekler. Bu kurulum rehberine ba\u015flamadan \u00f6nce a\u015fa\u011f\u0131daki \u00f6n gereksinimleri kar\u015f\u0131lad\u0131\u011f\u0131n\u0131zdan emin olun:<\/p>\n<p>*   <strong>Ubuntu 16.04 Sunucusu:<\/strong> Temiz bir Ubuntu 16.04 kurulumuna sahip bir sanal \u00f6zel sunucu (VPS) veya fiziksel sunucu.<br \/>\n*   <strong>SSH Eri\u015fimi:<\/strong> Sunucunuza SSH \u00fczerinden ba\u011flanabilme yetene\u011fi.<br \/>\n*   <strong>Sudo Yetkileri:<\/strong> Kurulum komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rmak i\u00e7in <code>sudo<\/code> yetkilerine sahip bir kullan\u0131c\u0131 hesab\u0131.<br \/>\n*   <strong>Alan Ad\u0131 (Opsiyonel):<\/strong> Bir alan ad\u0131 kullanmak, web sitenizi daha profesyonel hale getirecektir. Bu rehberde <code>your_domain_name.com<\/code> olarak \u00f6rnek bir alan ad\u0131 kullan\u0131lacakt\u0131r. Alan ad\u0131n\u0131z yoksa, sunucunuzun IP adresi \u00fczerinden de eri\u015fim sa\u011flayabilirsiniz.<\/p>\n<p>Bu rehber, sunucunuzun komut sat\u0131r\u0131 aray\u00fcz\u00fcnde (CLI) \u00e7al\u0131\u015faca\u011f\u0131n\u0131z varsay\u0131m\u0131yla yaz\u0131lm\u0131\u015ft\u0131r. SSH \u00fczerinden sunucunuza ba\u011fland\u0131ktan sonra, a\u015fa\u011f\u0131daki ad\u0131mlar\u0131 s\u0131ras\u0131yla uygulayarak LEMP y\u0131\u011f\u0131n\u0131n\u0131 ve WordPress&#8217;i kurmaya ba\u015flayabilirsiniz.<\/p>\n<h3>LEMP Y\u0131\u011f\u0131n\u0131 Kurulumu<\/h3>\n<p>LEMP y\u0131\u011f\u0131n\u0131, Linux i\u015fletim sistemi \u00fczerinde Nginx web sunucusu, MySQL (veya MariaDB) veritaban\u0131 ve PHP i\u015flemcisinin bir araya gelmesiyle olu\u015fur. Bu b\u00f6l\u00fcmde, her bir bile\u015fenin kurulumunu ve temel yap\u0131land\u0131rmas\u0131n\u0131 ele alaca\u011f\u0131z.<\/p>\n<h4>Sistem G\u00fcncellemesi<\/h4>\n<p>Herhangi bir yaz\u0131l\u0131m kurulumuna ba\u015flamadan \u00f6nce, sunucunuzdaki paket listesini g\u00fcncellemek ve mevcut paketleri y\u00fckseltmek iyi bir uygulamad\u0131r. Bu, olas\u0131 ba\u011f\u0131ml\u0131l\u0131k sorunlar\u0131n\u0131 \u00f6nlemeye yard\u0131mc\u0131 olur ve en g\u00fcncel g\u00fcvenlik yamalar\u0131n\u0131n y\u00fckl\u00fc olmas\u0131n\u0131 sa\u011flar.<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt upgrade -y<\/code><\/pre>\n<p><code>sudo apt update<\/code> komutu, yerel paket indeksini uzak depolardan g\u00fcnceller. <code>sudo apt upgrade -y<\/code> komutu ise, indirilen paket indeksine g\u00f6re y\u00fckl\u00fc t\u00fcm paketleri y\u00fckseltir. <code>-y<\/code> bayra\u011f\u0131, t\u00fcm onay sorular\u0131na otomatik olarak &#8220;evet&#8221; yan\u0131t\u0131 vermenizi sa\u011flar.<\/p>\n<h4>Nginx Web Sunucusu Kurulumu<\/h4>\n<p>Nginx, y\u00fcksek performansl\u0131, hafif ve kaynaklar\u0131 verimli kullanan pop\u00fcler bir web sunucusudur. Ubuntu 16.04 depolar\u0131nda kolayca bulunur.<\/p>\n<pre><code class=\"language-bash\">sudo apt install nginx -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, Nginx servisi otomatik olarak ba\u015flayabilir. Servisin durumunu kontrol etmek ve sunucu yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda otomatik olarak ba\u015flamas\u0131n\u0131 sa\u011flamak i\u00e7in a\u015fa\u011f\u0131daki komutlar\u0131 kullanabilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start nginx\nsudo systemctl enable nginx\nsudo systemctl status nginx<\/code><\/pre>\n<p><code>sudo systemctl status nginx<\/code> komutu, Nginx servisinin aktif (running) olup olmad\u0131\u011f\u0131n\u0131 ve herhangi bir hata olup olmad\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<p><strong>G\u00fcvenlik Duvar\u0131 (UFW) Ayarlar\u0131<\/strong><\/p>\n<p>E\u011fer sunucunuzda UFW (Uncomplicated Firewall) etkinse, Nginx&#8217;in gelen ba\u011flant\u0131lar\u0131 kabul etmesi i\u00e7in g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 ayarlaman\u0131z gerekir.<\/p>\n<pre><code class=\"language-bash\">sudo ufw allow 'Nginx HTTP'\nsudo ufw allow 'Nginx HTTPS'\nsudo ufw enable\nsudo ufw status<\/code><\/pre>\n<p><code>sudo ufw allow 'Nginx HTTP'<\/code> komutu, Nginx&#8217;in HTTP (80 numaral\u0131 port) trafi\u011fine izin verir. E\u011fer daha sonra SSL\/TLS (HTTPS) kullanmay\u0131 planl\u0131yorsan\u0131z, <code>sudo ufw allow 'Nginx HTTPS'<\/code> komutu ile HTTPS (443 numaral\u0131 port) trafi\u011fine de izin vermelisiniz. <code>sudo ufw enable<\/code> komutu g\u00fcvenlik duvar\u0131n\u0131 etkinle\u015ftirir (e\u011fer etkin de\u011filse). <code>sudo ufw status<\/code> komutu ise mevcut g\u00fcvenlik duvar\u0131 kurallar\u0131n\u0131 listeler.<\/p>\n<p><strong>Nginx&#8217;i Test Etme<\/strong><\/p>\n<p>Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve sunucunuzun IP adresini (\u00f6rne\u011fin, <code>http:\/\/your_server_ip<\/code>) veya yap\u0131land\u0131rd\u0131\u011f\u0131n\u0131z alan ad\u0131n\u0131 girin. E\u011fer her \u015fey do\u011fru kurulduysa, Nginx&#8217;in varsay\u0131lan kar\u015f\u0131lama sayfas\u0131n\u0131 g\u00f6rmelisiniz. Bu sayfa, Nginx&#8217;in ba\u015far\u0131l\u0131 bir \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 g\u00f6sterir.<\/p>\n<h4>MySQL Veritaban\u0131 Sunucusu Kurulumu<\/h4>\n<p>WordPress, site i\u00e7eri\u011fini, kullan\u0131c\u0131 bilgilerini ve di\u011fer verileri depolamak i\u00e7in bir veritaban\u0131na ihtiya\u00e7 duyar. Bu rehberde MySQL kullanaca\u011f\u0131z. Ubuntu 16.04 depolar\u0131 MySQL 5.7 s\u00fcr\u00fcm\u00fcn\u00fc i\u00e7erir.<\/p>\n<pre><code class=\"language-bash\">sudo apt install mysql-server -y<\/code><\/pre>\n<p>Kurulum tamamland\u0131ktan sonra, MySQL sunucusunun g\u00fcvenli\u011fini art\u0131rmak i\u00e7in <code>mysql_secure_installation<\/code> beti\u011fini \u00e7al\u0131\u015ft\u0131rmal\u0131s\u0131n\u0131z:<\/p>\n<pre><code class=\"language-bash\">sudo mysql_secure_installation<\/code><\/pre>\n<p>Bu betik size bir dizi soru soracakt\u0131r:<\/p>\n<p>*   <strong>VALIDATE PASSWORD PLUGIN:<\/strong> G\u00fc\u00e7l\u00fc \u015fifreler i\u00e7in bir eklenti kurmak isteyip istemedi\u011finiz sorulacakt\u0131r. G\u00fcvenlik i\u00e7in &#8220;Y&#8221; tu\u015funa basarak etkinle\u015ftirebilirsiniz. Ard\u0131ndan \u015fifre g\u00fcc\u00fc seviyesini se\u00e7meniz istenecektir.<br \/>\n*   <strong>root \u015fifresi belirleme:<\/strong> MySQL <code>root<\/code> kullan\u0131c\u0131s\u0131 i\u00e7in g\u00fc\u00e7l\u00fc bir \u015fifre belirleyin. Bu \u015fifreyi unutmay\u0131n, \u00e7\u00fcnk\u00fc veritaban\u0131 y\u00f6netimi i\u00e7in gereklidir.<br \/>\n*   <strong>Anonim kullan\u0131c\u0131lar\u0131 kald\u0131rma:<\/strong> &#8220;Y&#8221; tu\u015funa basarak anonim kullan\u0131c\u0131lar\u0131 kald\u0131r\u0131n.<br \/>\n*   <strong>root kullan\u0131c\u0131s\u0131n\u0131n uzaktan giri\u015fini engelleme:<\/strong> &#8220;Y&#8221; tu\u015funa basarak <code>root<\/code> kullan\u0131c\u0131s\u0131n\u0131n uzaktan ba\u011flanmas\u0131n\u0131 engelleyin. Bu, g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<br \/>\n*   <strong>Test veritaban\u0131n\u0131 kald\u0131rma:<\/strong> &#8220;Y&#8221; tu\u015funa basarak test veritaban\u0131n\u0131 kald\u0131r\u0131n.<br \/>\n*   <strong>Yetki tablolar\u0131n\u0131 yeniden y\u00fckleme:<\/strong> &#8220;Y&#8221; tu\u015funa basarak yetki tablolar\u0131n\u0131 yeniden y\u00fckleyin.<\/p>\n<p>Bu ad\u0131mlar\u0131 tamamlad\u0131ktan sonra, WordPress i\u00e7in yeni bir veritaban\u0131 ve kullan\u0131c\u0131 olu\u015fturman\u0131z gerekir. MySQL komut sat\u0131r\u0131na root kullan\u0131c\u0131s\u0131 olarak giri\u015f yap\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo mysql -u root -p<\/code><\/pre>\n<p>Az \u00f6nce belirledi\u011finiz <code>root<\/code> \u015fifresini girin. Ard\u0131ndan, a\u015fa\u011f\u0131daki SQL komutlar\u0131n\u0131 \u00e7al\u0131\u015ft\u0131rarak WordPress i\u00e7in bir veritaban\u0131 ve kullan\u0131c\u0131 olu\u015fturun. <code>wordpress_db<\/code>, <code>wordpress_user<\/code> ve <code>your_strong_password<\/code> k\u0131s\u0131mlar\u0131n\u0131 kendi tercihlerinize g\u00f6re de\u011fi\u015ftirin. \u015eifrenizin g\u00fc\u00e7l\u00fc oldu\u011fundan emin olun.<\/p>\n<pre><code class=\"language-sql\">CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nCREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY 'your_strong_password';\nGRANT ALL PRIVILEGES ON wordpress_db.* TO 'wordpress_user'@'localhost';\nFLUSH PRIVILEGES;\nEXIT;<\/code><\/pre>\n<p>*   <code>CREATE DATABASE wordpress_db ...<\/code>: WordPress i\u00e7in <code>wordpress_db<\/code> ad\u0131nda bir veritaban\u0131 olu\u015fturur ve UTF-8 deste\u011fi ile karakter setini ayarlar.<br \/>\n*   <code>CREATE USER ...<\/code>: <code>wordpress_user<\/code> ad\u0131nda ve yaln\u0131zca <code>localhost<\/code>&#8216;tan ba\u011flanabilen bir kullan\u0131c\u0131 olu\u015fturur.<br \/>\n*   <code>GRANT ALL PRIVILEGES ...<\/code>: <code>wordpress_user<\/code> kullan\u0131c\u0131s\u0131na <code>wordpress_db<\/code> \u00fczerindeki t\u00fcm yetkileri verir.<br \/>\n*   <code>FLUSH PRIVILEGES<\/code>: De\u011fi\u015fikliklerin hemen etkinle\u015fmesini sa\u011flar.<br \/>\n*   <code>EXIT<\/code>: MySQL komut sat\u0131r\u0131ndan \u00e7\u0131kar.<\/p>\n<h4>PHP Kurulumu (PHP-FPM)<\/h4>\n<p>WordPress, dinamik i\u00e7erik olu\u015fturmak i\u00e7in PHP&#8217;ye ihtiya\u00e7 duyar. Nginx, PHP kodunu do\u011frudan \u00e7al\u0131\u015ft\u0131ramaz; bunun yerine PHP-FPM (FastCGI Process Manager) ile ileti\u015fim kurarak PHP dosyalar\u0131n\u0131 i\u015fler. Ubuntu 16.04, varsay\u0131lan olarak PHP 7.0 s\u00fcr\u00fcm\u00fcn\u00fc sunar.<\/p>\n<p>A\u015fa\u011f\u0131daki komutla PHP-FPM ve WordPress&#8217;in ihtiya\u00e7 duydu\u011fu temel PHP mod\u00fcllerini kurun:<\/p>\n<pre><code class=\"language-bash\">sudo apt install php-fpm php-mysql php-cli php-curl php-gd php-mbstring php-xml php-zip -y<\/code><\/pre>\n<p>*   <code>php-fpm<\/code>: PHP FastCGI \u0130\u015flem Y\u00f6neticisi.<br \/>\n*   <code>php-mysql<\/code>: PHP&#8217;nin MySQL veritabanlar\u0131yla ileti\u015fim kurmas\u0131n\u0131 sa\u011flayan mod\u00fcl.<br \/>\n*   <code>php-cli<\/code>: Komut sat\u0131r\u0131ndan PHP betiklerini \u00e7al\u0131\u015ft\u0131rmak i\u00e7in.<br \/>\n*   <code>php-curl<\/code>: Uzak sunucularla HTTP istekleri yapmak i\u00e7in.<br \/>\n*   <code>php-gd<\/code>: Resim i\u015fleme yetenekleri i\u00e7in (\u00f6rne\u011fin, WordPress&#8217;in resim k\u00fc\u00e7\u00fck resimleri olu\u015fturmas\u0131).<br \/>\n*   <code>php-mbstring<\/code>: \u00c7ok baytl\u0131 dizelerle \u00e7al\u0131\u015fmak i\u00e7in.<br \/>\n*   <code>php-xml<\/code>: XML i\u015fleme yetenekleri i\u00e7in.<br \/>\n*   <code>php-zip<\/code>: Zip dosyalar\u0131n\u0131 i\u015flemek i\u00e7in.<\/p>\n<p>Kurulum tamamland\u0131ktan sonra, PHP-FPM servisinin \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan ve sistem ba\u015flang\u0131c\u0131nda otomatik olarak ba\u015flad\u0131\u011f\u0131ndan emin olun:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl start php7.0-fpm\nsudo systemctl enable php7.0-fpm\nsudo systemctl status php7.0-fpm<\/code><\/pre>\n<p><strong>PHP Yap\u0131land\u0131rmas\u0131 (<code>php.ini<\/code>)<\/strong><\/p>\n<p>WordPress&#8217;in sorunsuz \u00e7al\u0131\u015fmas\u0131 i\u00e7in baz\u0131 PHP ayarlar\u0131n\u0131 d\u00fczenlemek isteyebilirsiniz. \u00d6zellikle b\u00fcy\u00fck dosyalar y\u00fcklemeyi planl\u0131yorsan\u0131z veya bellek sorunlar\u0131 ya\u015f\u0131yorsan\u0131z bu ayarlar \u00f6nemlidir. PHP-FPM i\u00e7in yap\u0131land\u0131rma dosyas\u0131 genellikle <code>\/etc\/php\/7.0\/fpm\/php.ini<\/code> konumundad\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/php\/7.0\/fpm\/php.ini<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki sat\u0131rlar\u0131 bulup de\u011ferlerini art\u0131rabilirsiniz (\u00f6rnek de\u011ferler verilmi\u015ftir, ihtiya\u00e7lar\u0131n\u0131za g\u00f6re ayarlay\u0131n):<\/p>\n<p>*   <code>upload_max_filesize = 64M<\/code><br \/>\n*   <code>post_max_size = 64M<\/code><br \/>\n*   <code>memory_limit = 256M<\/code><br \/>\n*   <code>max_execution_time = 300<\/code><br \/>\n*   <code>date.timezone = Europe\/Istanbul<\/code> (Kendi zaman diliminizi ayarlay\u0131n)<\/p>\n<p>De\u011fi\u015fiklikleri kaydettikten sonra (CTRL+O, Enter, CTRL+X), PHP-FPM servisini yeniden ba\u015flatman\u0131z gerekir:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl restart php7.0-fpm<\/code><\/pre>\n<h3>Nginx WordPress Yap\u0131land\u0131rmas\u0131<\/h3>\n<p>Nginx&#8217;i WordPress ile \u00e7al\u0131\u015facak \u015fekilde yap\u0131land\u0131rmam\u0131z gerekiyor. Bu, Nginx&#8217;in gelen web isteklerini nas\u0131l i\u015fleyece\u011fini, PHP dosyalar\u0131n\u0131 PHP-FPM&#8217;ye nas\u0131l iletece\u011fini ve WordPress&#8217;in kal\u0131c\u0131 ba\u011flant\u0131 (permalink) yap\u0131s\u0131n\u0131 nas\u0131l y\u00f6netece\u011fini belirler.<\/p>\n<p>Varsay\u0131lan Nginx yap\u0131land\u0131rmas\u0131n\u0131 kald\u0131rmak veya devre d\u0131\u015f\u0131 b\u0131rakmak genellikle iyi bir uygulamad\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo rm \/etc\/nginx\/sites-enabled\/default<\/code><\/pre>\n<p>\u015eimdi WordPress i\u00e7in yeni bir Nginx sunucu blo\u011fu yap\u0131land\u0131rma dosyas\u0131 olu\u015ftural\u0131m. Bu dosyay\u0131 <code>\/etc\/nginx\/sites-available\/<\/code> dizininde olu\u015fturaca\u011f\u0131z. Alan ad\u0131n\u0131z\u0131 kullanarak daha a\u00e7\u0131klay\u0131c\u0131 bir isim verebilirsiniz, \u00f6rne\u011fin <code>your_domain_name.conf<\/code>.<\/p>\n<pre><code class=\"language-bash\">sudo nano \/etc\/nginx\/sites-available\/your_domain_name.conf<\/code><\/pre>\n<p>A\u015fa\u011f\u0131daki yap\u0131land\u0131rmay\u0131 dosyaya yap\u0131\u015ft\u0131r\u0131n. <code>your_domain_name.com<\/code> k\u0131sm\u0131n\u0131 kendi alan ad\u0131n\u0131zla de\u011fi\u015ftirin. E\u011fer alan ad\u0131 kullanm\u0131yorsan\u0131z, <code>server_name<\/code> k\u0131sm\u0131na sunucunuzun IP adresini yazabilir veya <code>_<\/code> (underscore) b\u0131rakabilirsiniz, bu durumda t\u00fcm IP adresleri i\u00e7in ge\u00e7erli olacakt\u0131r.<\/p>\n<pre><code class=\"language-nginx\">server {\n    listen 80;\n    listen [::]:80;\n\n    root \/var\/www\/html\/wordpress;\n    index index.php index.html index.htm;\n\n    server_name your_domain_name.com www.your_domain_name.com; # Alan ad\u0131n\u0131z\u0131 buraya yaz\u0131n\n\n    client_max_body_size 64M; # php.ini ile uyumlu olmal\u0131\n\n    location \/ {\n        try_files $uri $uri\/ \/index.php?$args;\n    }\n\n    location ~ \\.php$ {\n        include snippets\/fastcgi-php.conf;\n        fastcgi_pass unix:\/run\/php\/php7.0-fpm.sock;\n        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\n        include fastcgi_params;\n    }\n\n    location ~ \/\\.ht {\n        deny all;\n    }\n\n    # WordPress g\u00fcvenlik \u00f6nerileri\n    location = \/wp-config.php {\n        deny all;\n    }\n    location = \/readme.html {\n        deny all;\n    }\n    location = \/license.txt {\n        deny all;\n    }\n}<\/code><\/pre>\n<p><strong>Yap\u0131land\u0131rma A\u00e7\u0131klamas\u0131:<\/strong><\/p>\n<p>*   <code>listen 80;<\/code>: Nginx&#8217;in 80 numaral\u0131 HTTP portunu dinlemesini sa\u011flar.<br \/>\n*   <code>root \/var\/www\/html\/wordpress;<\/code>: WordPress dosyalar\u0131n\u0131n bulundu\u011fu k\u00f6k dizini belirtir.<br \/>\n*   <code>index index.php ...<\/code>: Dizin isteklerinde \u00f6nce hangi dosyalar\u0131n aranaca\u011f\u0131n\u0131 belirtir.<br \/>\n*   <code>server_name ...<\/code>: Bu sunucu blo\u011funun hangi alan adlar\u0131 i\u00e7in ge\u00e7erli oldu\u011funu belirtir.<br \/>\n*   <code>client_max_body_size 64M;<\/code>: Nginx&#8217;in kabul edece\u011fi maksimum istek g\u00f6vde boyutunu ayarlar (PHP ayarlar\u0131yla uyumlu olmal\u0131).<br \/>\n*   <code>location \/ { ... }<\/code>: Gelen t\u00fcm istekleri i\u015fler. <code>try_files<\/code> y\u00f6nergesi, WordPress&#8217;in kal\u0131c\u0131 ba\u011flant\u0131lar\u0131n\u0131n do\u011fru \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flar. E\u011fer istenen dosya veya dizin bulunamazsa, istek <code>index.php<\/code>&#8216;ye y\u00f6nlendirilir.<br \/>\n*   <code>location ~ \\.php$ { ... }<\/code>: <code>.php<\/code> uzant\u0131l\u0131 t\u00fcm istekleri PHP-FPM&#8217;ye iletir. <code>fastcgi_pass<\/code> y\u00f6nergesi, PHP-FPM&#8217;nin Unix soketini kullanarak Nginx ile PHP-FPM aras\u0131ndaki ileti\u015fimi sa\u011flar.<br \/>\n*   <code>location ~ \/\\.ht { ... }<\/code>: <code>.htaccess<\/code> gibi gizli dosyalar\u0131n do\u011frudan eri\u015fimini engeller.<br \/>\n*   <code>location = \/wp-config.php { deny all; }<\/code>: <code>wp-config.php<\/code> dosyas\u0131n\u0131n web \u00fczerinden eri\u015fimini tamamen engeller, bu \u00f6nemli bir g\u00fcvenlik \u00f6nlemidir.<\/p>\n<p>Dosyay\u0131 kaydedin ve kapat\u0131n. \u015eimdi bu yap\u0131land\u0131rma dosyas\u0131n\u0131 etkinle\u015ftirmek i\u00e7in <code>\/etc\/nginx\/sites-enabled\/<\/code> dizinine sembolik bir ba\u011flant\u0131 olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo ln -s \/etc\/nginx\/sites-available\/your_domain_name.conf \/etc\/nginx\/sites-enabled\/<\/code><\/pre>\n<p>Nginx yap\u0131land\u0131rman\u0131zda herhangi bir s\u00f6zdizimi hatas\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol edin:<\/p>\n<pre><code class=\"language-bash\">sudo nginx -t<\/code><\/pre>\n<p>E\u011fer \u00e7\u0131kt\u0131 <code>syntax is ok<\/code> ve <code>test is successful<\/code> diyorsa, Nginx servisini yeniden y\u00fckleyebilirsiniz:<\/p>\n<pre><code class=\"language-bash\">sudo systemctl reload nginx<\/code><\/pre>\n<p>Bu, Nginx&#8217;in yeni yap\u0131land\u0131rmay\u0131 herhangi bir kesinti olmadan uygulamas\u0131n\u0131 sa\u011flar.<\/p>\n<h3>WordPress Kurulumu<\/h3>\n<p>Art\u0131k LEMP y\u0131\u011f\u0131n\u0131m\u0131z haz\u0131r oldu\u011funa g\u00f6re, WordPress dosyalar\u0131n\u0131 sunucumuza indirip yap\u0131land\u0131rma zaman\u0131.<\/p>\n<h4>WordPress Dosyalar\u0131n\u0131 \u0130ndirme ve \u00c7\u0131kartma<\/h4>\n<p>Ge\u00e7ici bir dizine gidin ve WordPress&#8217;in en son s\u00fcr\u00fcm\u00fcn\u00fc indirin:<\/p>\n<pre><code class=\"language-bash\">cd \/tmp\nwget https:\/\/wordpress.org\/latest.tar.gz<\/code><\/pre>\n<p>\u0130ndirilen s\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f dosyay\u0131 a\u00e7\u0131n:<\/p>\n<pre><code class=\"language-bash\">tar -xzvf latest.tar.gz<\/code><\/pre>\n<p>Bu komut, <code>\/tmp\/wordpress\/<\/code> dizini alt\u0131nda WordPress dosyalar\u0131n\u0131 \u00e7\u0131karacakt\u0131r.<\/p>\n<h4>WordPress Dosyalar\u0131n\u0131 Web K\u00f6k Dizinine Ta\u015f\u0131ma<\/h4>\n<p>Daha \u00f6nce Nginx yap\u0131land\u0131rmas\u0131nda belirtti\u011fimiz web k\u00f6k dizinine (\u00f6rne\u011fin, <code>\/var\/www\/html\/wordpress<\/code>) WordPress dosyalar\u0131n\u0131 ta\u015f\u0131y\u0131n:<\/p>\n<pre><code class=\"language-bash\">sudo mv \/tmp\/wordpress \/var\/www\/html\/<\/code><\/pre>\n<p>Bu komut, <code>\/var\/www\/html\/wordpress<\/code> ad\u0131nda yeni bir dizin olu\u015fturacak ve t\u00fcm WordPress dosyalar\u0131n\u0131 i\u00e7ine ta\u015f\u0131yacakt\u0131r.<\/p>\n<h4>Dizin \u0130zinlerini Ayarlama<\/h4>\n<p>WordPress&#8217;in do\u011fru \u00e7al\u0131\u015fabilmesi, eklenti ve tema y\u00fckleyebilmesi veya g\u00fcncellemeleri yapabilmesi i\u00e7in dosya ve dizin izinlerinin do\u011fru ayarlanmas\u0131 \u00e7ok \u00f6nemlidir. Web sunucusu kullan\u0131c\u0131s\u0131 (<code>www-data<\/code> on Ubuntu) WordPress dosyalar\u0131n\u0131n sahibi olmal\u0131 ve uygun okuma\/yazma izinlerine sahip olmal\u0131d\u0131r.<\/p>\n<pre><code class=\"language-bash\">sudo chown -R www-data:www-data \/var\/www\/html\/wordpress\nsudo find \/var\/www\/html\/wordpress -type d -exec chmod 755 {} \\;\nsudo find \/var\/www\/html\/wordpress -type f -exec chmod 644 {} \\;<\/code><\/pre>\n<p>*   <code>sudo chown -R www-data:www-data \/var\/www\/html\/wordpress<\/code>: <code>\/var\/www\/html\/wordpress<\/code> dizini ve i\u00e7indeki t\u00fcm dosya ve dizinlerin sahipli\u011fini <code>www-data<\/code> kullan\u0131c\u0131s\u0131na ve <code>www-data<\/code> grubuna atar.<br \/>\n*   <code>sudo find \/var\/www\/html\/wordpress -type d -exec chmod 755 {} \\;<\/code>: T\u00fcm dizinlere <code>755<\/code> izinlerini atar (sahip okuma\/yazma\/\u00e7al\u0131\u015ft\u0131rma, grup okuma\/\u00e7al\u0131\u015ft\u0131rma, di\u011ferleri okuma\/\u00e7al\u0131\u015ft\u0131rma).<br \/>\n*   <code>sudo find \/var\/www\/html\/wordpress -type f -exec chmod 644 {} \\;<\/code>: T\u00fcm dosyalara <code>644<\/code> izinlerini atar (sahip okuma\/yazma, grup okuma, di\u011ferleri okuma).<\/p>\n<p>Bu izinler, genel olarak WordPress i\u00e7in g\u00fcvenli ve i\u015flevsel bir temel sa\u011flar. Ancak, baz\u0131 eklentiler veya \u00f6zel durumlar i\u00e7in farkl\u0131 izinler gerekebilir.<\/p>\n<h4>WordPress Yap\u0131land\u0131rmas\u0131 (<code>wp-config.php<\/code>)<\/h4>\n<p>WordPress&#8217;in veritaban\u0131 ba\u011flant\u0131 bilgilerini ve di\u011fer \u00f6nemli ayarlar\u0131 i\u00e7eren <code>wp-config.php<\/code> dosyas\u0131n\u0131 olu\u015fturup d\u00fczenlemeniz gerekir.<\/p>\n<p>WordPress k\u00f6k dizinine gidin:<\/p>\n<pre><code class=\"language-bash\">cd \/var\/www\/html\/wordpress<\/code><\/pre>\n<p>\u00d6rnek yap\u0131land\u0131rma dosyas\u0131n\u0131 kopyalayarak yeni bir <code>wp-config.php<\/code> dosyas\u0131 olu\u015fturun:<\/p>\n<pre><code class=\"language-bash\">sudo cp wp-config-sample.php wp-config.php<\/code><\/pre>\n<p>\u015eimdi bu dosyay\u0131 d\u00fczenleyin:<\/p>\n<pre><code class=\"language-bash\">sudo nano wp-config.php<\/code><\/pre>\n<p>Dosya i\u00e7inde a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 bulun ve daha \u00f6nce MySQL kurulumunda olu\u015fturdu\u011funuz veritaban\u0131 ad\u0131, kullan\u0131c\u0131 ad\u0131 ve \u015fifre ile g\u00fcncelleyin:<\/p>\n<pre><code class=\"language-php\">\/\/ <strong> MySQL settings - You can get this info from your web host <\/strong> \/\/\n\/<em><\/em> The name of the database for WordPress *\/\ndefine('DB_NAME', 'wordpress_db');\n\n\/<em><\/em> MySQL database username *\/\ndefine('DB_USER', 'wordpress_user');\n\n\/<em><\/em> MySQL database password *\/\ndefine('DB_PASSWORD', 'your_strong_password');\n\n\/<em><\/em> MySQL hostname *\/\ndefine('DB_HOST', 'localhost'); \/\/ Veritaban\u0131 sunucusu ayn\u0131 sunucuda oldu\u011fu i\u00e7in 'localhost'<\/code><\/pre>\n<p><strong>Benzersiz Kimlik Do\u011frulama Anahtarlar\u0131 (Salt Keys)<\/strong><\/p>\n<p>WordPress g\u00fcvenli\u011fi i\u00e7in \u00f6nemli olan benzersiz kimlik do\u011frulama anahtarlar\u0131n\u0131 (SALT keys) olu\u015fturman\u0131z gerekir. Bu anahtarlar, \u00e7erezlerin ve oturum bilgilerinin daha g\u00fcvenli olmas\u0131n\u0131 sa\u011flar. Bu anahtarlar\u0131 WordPress&#8217;in resmi API&#8217;sinden kolayca alabilirsiniz: <code>https:\/\/api.wordpress.org\/secret-key\/1.1\/salt\/<\/code>.<\/p>\n<p>Yukar\u0131daki URL&#8217;yi bir taray\u0131c\u0131da a\u00e7\u0131n, size rastgele olu\u015fturulmu\u015f bir dizi anahtar g\u00f6sterecektir. Bu anahtarlar\u0131 kopyalay\u0131n ve <code>wp-config.php<\/code> dosyas\u0131ndaki ilgili sat\u0131rlar\u0131 yap\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131z anahtarlarla de\u011fi\u015ftirin:<\/p>\n<pre><code class=\"language-php\">define('AUTH_KEY',         'put your unique phrase here');\ndefine('SECURE_AUTH_KEY',  'put your unique phrase here');\ndefine('LOGGED_IN_KEY',    'put your unique phrase here');\ndefine('NONCE_KEY',        'put your unique phrase here');\ndefine('AUTH_SALT',        'put your unique phrase here');\ndefine('SECURE_AUTH_SALT', 'put your unique phrase here');\ndefine('LOGGED_IN_SALT',   'put your unique phrase here');\ndefine('NONCE_SALT',       'put your unique phrase here');<\/code><\/pre>\n<p><strong>FS_METHOD Ayar\u0131 (Opsiyonel)<\/strong><\/p>\n<p>Baz\u0131 durumlarda (\u00f6zellikle eklenti veya tema y\u00fcklerken\/g\u00fcncellerken FTP bilgilerini sormas\u0131 gibi), WordPress&#8217;in dosya sistemi y\u00f6ntemini do\u011frudan eri\u015fime ayarlamak isteyebilirsiniz. Bu, genellikle bir g\u00fcvenlik riski olmasa da, sunucunuzun do\u011fru yap\u0131land\u0131r\u0131lmad\u0131\u011f\u0131 durumlarda sorunlara yol a\u00e7abilir. Bu ayar\u0131, <code>wp-config.php<\/code> dosyas\u0131n\u0131n en alt\u0131na (define sat\u0131rlar\u0131ndan sonra) ekleyebilirsiniz:<\/p>\n<pre><code class=\"language-php\">define('FS_METHOD', 'direct');<\/code><\/pre>\n<p>De\u011fi\u015fiklikleri kaydedin ve <code>wp-config.php<\/code> dosyas\u0131n\u0131 kapat\u0131n.<\/p>\n<h3>Taray\u0131c\u0131 \u00dczerinden WordPress Kurulumunu Tamamlama<\/h3>\n<p>T\u00fcm sunucu ve WordPress dosyas\u0131 yap\u0131land\u0131rmalar\u0131 tamamland\u0131\u011f\u0131na g\u00f6re, art\u0131k web taray\u0131c\u0131n\u0131z \u00fczerinden WordPress kurulumunu tamamlayabilirsiniz.<\/p>\n<p>Web taray\u0131c\u0131n\u0131z\u0131 a\u00e7\u0131n ve sunucunuzun IP adresine veya yap\u0131land\u0131rd\u0131\u011f\u0131n\u0131z alan ad\u0131na gidin (\u00f6rne\u011fin, <code>http:\/\/your_domain_name.com<\/code>).<\/p>\n<p>WordPress sizi kurulum sihirbaz\u0131na y\u00f6nlendirecektir:<\/p>\n<p>1.  <strong>Dil Se\u00e7imi:<\/strong> \u0130lk olarak, WordPress&#8217;i hangi dilde kurmak istedi\u011finizi se\u00e7in ve &#8220;Devam&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<br \/>\n2.  <strong>Ho\u015f Geldiniz Sayfas\u0131:<\/strong> Bu sayfada, WordPress&#8217;in veritaban\u0131 bilgilerine ihtiya\u00e7 duydu\u011fu belirtilir. &#8220;Ba\u015flayal\u0131m!&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<br \/>\n3.  <strong>Veritaban\u0131 Bilgileri:<\/strong> Daha \u00f6nce olu\u015fturdu\u011funuz veritaban\u0131 ad\u0131, kullan\u0131c\u0131 ad\u0131, \u015fifre ve veritaban\u0131 sunucusu (genellikle <code>localhost<\/code>) bilgilerini girin. Tablo \u00f6neki genellikle <code>wp_<\/code> olarak b\u0131rak\u0131labilir. &#8220;G\u00f6nder&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<br \/>\n4.  <strong>Kurulumu \u00c7al\u0131\u015ft\u0131r:<\/strong> WordPress, veritaban\u0131 ba\u011flant\u0131s\u0131n\u0131n ba\u015far\u0131l\u0131 oldu\u011funu teyit edecektir. &#8220;Kurulumu \u00c7al\u0131\u015ft\u0131r&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<br \/>\n5.  <strong>Site Bilgileri:<\/strong><br \/>\n    *   <strong>Site Ba\u015fl\u0131\u011f\u0131:<\/strong> Web sitenizin ba\u015fl\u0131\u011f\u0131n\u0131 girin (daha sonra de\u011fi\u015ftirebilirsiniz).<br \/>\n    *   <strong>Kullan\u0131c\u0131 Ad\u0131:<\/strong> Y\u00f6netici hesab\u0131n\u0131z i\u00e7in bir kullan\u0131c\u0131 ad\u0131 belirleyin. <code>admin<\/code> gibi yayg\u0131n kullan\u0131c\u0131 adlar\u0131ndan ka\u00e7\u0131nmak g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemlidir.<br \/>\n    *   <strong>\u015eifre:<\/strong> G\u00fc\u00e7l\u00fc bir \u015fifre belirleyin ve not al\u0131n.<br \/>\n    *   <strong>E-posta Adresiniz:<\/strong> Y\u00f6netici e-posta adresinizi girin.<br \/>\n    *   <strong>Arama Motoru G\u00f6r\u00fcn\u00fcrl\u00fc\u011f\u00fc:<\/strong> E\u011fer siteniz hen\u00fcz herkese a\u00e7\u0131k olmas\u0131n\u0131 istemiyorsan\u0131z, &#8220;Arama motorlar\u0131n\u0131n bu siteyi indekslemesini engelle&#8221; se\u00e7ene\u011fini i\u015faretleyebilirsiniz. Daha sonra WordPress ayarlar\u0131ndan bu se\u00e7ene\u011fi de\u011fi\u015ftirebilirsiniz.<br \/>\n6.  <strong>WordPress&#8217;i Kur:<\/strong> T\u00fcm bilgileri girdikten sonra &#8220;WordPress&#8217;i Kur&#8221; d\u00fc\u011fmesine t\u0131klay\u0131n.<\/p>\n<p>Kurulum tamamland\u0131\u011f\u0131nda, WordPress size ba\u015far\u0131l\u0131 bir kurulum mesaj\u0131 g\u00f6sterecek ve y\u00f6netici paneline giri\u015f yapman\u0131z i\u00e7in bir ba\u011flant\u0131 sunacakt\u0131r. Y\u00f6netici kullan\u0131c\u0131 ad\u0131n\u0131z ve \u015fifrenizle giri\u015f yaparak WordPress kontrol panelinize eri\u015febilirsiniz.<\/p>\n<p>Tebrikler! Ubuntu 16.04 sunucunuz \u00fczerine LEMP y\u0131\u011f\u0131n\u0131 ile WordPress&#8217;i ba\u015far\u0131yla kurmu\u015f oldunuz.<\/p>\n<h3>Ek G\u00fcvenlik ve Optimizasyon \u00d6nerileri<\/h3>\n<p>WordPress kurulumunuz art\u0131k \u00e7al\u0131\u015f\u0131r durumda olsa da, sitenizin g\u00fcvenli\u011fini ve performans\u0131n\u0131 art\u0131rmak i\u00e7in baz\u0131 ek ad\u0131mlar atmak \u00f6nemlidir.<\/p>\n<h4>HTTPS (SSL\/TLS) Kullan\u0131m\u0131<\/h4>\n<p>Web sitenizi HTTPS \u00fczerinden yay\u0131nlamak, kullan\u0131c\u0131lar\u0131n\u0131z\u0131n verilerini \u015fifreler ve sitenizin g\u00fcvenilirli\u011fini art\u0131r\u0131r. Google gibi arama motorlar\u0131 da HTTPS kullanan sitelere s\u0131ralamada \u00f6ncelik verir. Let&#8217;s Encrypt, \u00fccretsiz SSL\/TLS sertifikalar\u0131 sa\u011flayan pop\u00fcler bir hizmettir. Certbot arac\u0131 ile kolayca kurulum yapabilirsiniz.<\/p>\n<pre><code class=\"language-bash\">sudo apt install certbot python-certbot-nginx -y\nsudo certbot --nginx -d your_domain_name.com -d www.your_domain_name.com<\/code><\/pre>\n<p>Bu komutlar, Certbot&#8217;u kurar ve Nginx yap\u0131land\u0131rman\u0131z\u0131 otomatik olarak HTTPS&#8217;ye y\u00f6nlendirecek \u015fekilde g\u00fcnceller. Certbot, sertifikalar\u0131n otomatik yenilenmesini de ayarlayacakt\u0131r.<\/p>\n<h4>D\u00fczenli G\u00fcncellemeler<\/h4>\n<p>Sisteminizin, LEMP bile\u015fenlerinin (Nginx, MySQL, PHP) ve WordPress&#8217;in (\u00e7ekirdek, eklentiler, temalar) d\u00fczenli olarak g\u00fcncel tutulmas\u0131, g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 kapat\u0131r ve performans iyile\u015ftirmeleri sa\u011flar.<\/p>\n<p>*   <strong>Sistem G\u00fcncellemesi:<\/strong> <code>sudo apt update && sudo apt upgrade -y<\/code><br \/>\n*   <strong>WordPress G\u00fcncellemesi:<\/strong> WordPress y\u00f6netici paneli \u00fczerinden veya WP-CLI kullanarak g\u00fcncellemeleri yap\u0131n.<\/p>\n<h4>Yedeklemeler<\/h4>\n<p>D\u00fczenli yedeklemeler, olas\u0131 veri kay\u0131plar\u0131na kar\u015f\u0131 en iyi savunmad\u0131r. WordPress veritaban\u0131n\u0131z\u0131 ve dosya sisteminizi d\u00fczenli olarak yedeklemelisiniz. Bunun i\u00e7in \u00e7e\u015fitli eklentiler veya sunucu taraf\u0131nda betikler kullanabilirsiniz.<\/p>\n<h4>G\u00fcvenlik Eklentileri<\/h4>\n<p>WordPress i\u00e7in Wordfence, Sucuri Security gibi g\u00fcvenlik eklentileri, k\u00f6t\u00fc ama\u00e7l\u0131 yaz\u0131l\u0131mlar\u0131 tarar, g\u00fcvenlik duvar\u0131 sa\u011flar ve \u00e7e\u015fitli g\u00fcvenlik \u00f6nlemleri alman\u0131za yard\u0131mc\u0131 olur.<\/p>\n<h4>Dizin Listelemesini Kapatma<\/h4>\n<p>Nginx yap\u0131land\u0131rman\u0131zda, <code>root<\/code> dizininin bulundu\u011fu <code>server<\/code> blo\u011funa a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyerek dizin listelemesini kapatabilirsiniz. Bu, ziyaret\u00e7ilerin web sitenizdeki dizin i\u00e7eriklerini g\u00f6rmesini engeller.<\/p>\n<pre><code class=\"language-nginx\">autoindex off;<\/code><\/pre>\n<p>Bu ayar\u0131 ekledikten sonra Nginx&#8217;i yeniden y\u00fcklemeyi unutmay\u0131n (<code>sudo systemctl reload nginx<\/code>).<\/p>\n<h4>XML-RPC&#8217;yi Devre D\u0131\u015f\u0131 B\u0131rakma (Gereksizse)<\/h4>\n<p>XML-RPC, WordPress&#8217;in eski bir API&#8217;sidir ve baz\u0131 g\u00fcvenlik a\u00e7\u0131klar\u0131 nedeniyle hedef al\u0131nabilir. E\u011fer mobil uygulamalar veya Jetpack gibi XML-RPC&#8217;ye ihtiya\u00e7 duyan bir eklenti kullanm\u0131yorsan\u0131z, bunu devre d\u0131\u015f\u0131 b\u0131rakmay\u0131 d\u00fc\u015f\u00fcnebilirsiniz. Bunun i\u00e7in <code>wp-config.php<\/code> dosyan\u0131za a\u015fa\u011f\u0131daki sat\u0131r\u0131 ekleyebilirsiniz:<\/p>\n<pre><code class=\"language-php\">define('DISABLE_XML_RPC', true);<\/code><\/pre>\n<h3>Sonu\u00e7<\/h3>\n<p>Bu makale boyunca, Ubuntu 16.04 sunucunuz \u00fczerine LEMP y\u0131\u011f\u0131n\u0131 kurmaktan, Nginx&#8217;i WordPress i\u00e7in yap\u0131land\u0131rmaya ve son olarak WordPress&#8217;i ba\u015far\u0131yla y\u00fcklemeye kadar t\u00fcm ad\u0131mlar\u0131 detayl\u0131 bir \u015fekilde ele ald\u0131k. Art\u0131k y\u00fcksek performansl\u0131 bir Nginx web sunucusu, g\u00fcvenilir bir MySQL veritaban\u0131 ve PHP-FPM ile desteklenen, tam i\u015flevsel bir WordPress web siteniz var.<\/p>\n<p>Unutmay\u0131n ki bir web sitesini canl\u0131 tutmak sadece kurulumdan ibaret de\u011fildir. S\u00fcrekli g\u00fcvenlik g\u00fcncellemeleri, d\u00fczenli yedeklemeler ve performans optimizasyonlar\u0131, sitenizin uzun \u00f6m\u00fcrl\u00fc ve sorunsuz \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in hayati \u00f6neme sahiptir. Bu rehberdeki ad\u0131mlar\u0131 takip ederek, WordPress maceran\u0131za sa\u011flam bir temel \u00fczerinde ba\u015flam\u0131\u015f oldunuz. Ba\u015far\u0131lar dileriz!<\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu\nBu kapsaml\u0131 teknik makalede, Ubuntu 16.04 sunucusu \u00fczerine LEMP (Linux, Nginx, MySQL,","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-34640","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>Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu - 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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu Bu kapsaml\u0131 teknik makalede, Ubuntu 16.04 sunucusu \u00fczerine LEMP (Linux, Nginx, MySQL,\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-20T00:40:47+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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu\",\"datePublished\":\"2025-11-20T00:40:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\"},\"wordCount\":2891,\"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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\",\"name\":\"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-20T00:40:47+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu\"}]},{\"@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":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu - 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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/","og_locale":"tr_TR","og_type":"article","og_title":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu","og_description":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu Bu kapsaml\u0131 teknik makalede, Ubuntu 16.04 sunucusu \u00fczerine LEMP (Linux, Nginx, MySQL,","og_url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-20T00:40:47+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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu","datePublished":"2025-11-20T00:40:47+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/"},"wordCount":2891,"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\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/","url":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/","name":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-20T00:40:47+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/ubuntu-16-04-uzerine-lemp-yigini-ile-wordpress-kurulumu\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 16.04 \u00dczerine LEMP Y\u0131\u011f\u0131n\u0131 ile WordPress Kurulumu"}]},{"@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\/34640","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=34640"}],"version-history":[{"count":1,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34640\/revisions"}],"predecessor-version":[{"id":34641,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/34640\/revisions\/34641"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=34640"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=34640"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=34640"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}