{"id":2488,"date":"2026-07-22T12:29:32","date_gmt":"2026-07-22T09:29:32","guid":{"rendered":"https:\/\/saviorhost.com\/blog\/500-internal-server-error-cozumu\/"},"modified":"2026-07-22T14:08:24","modified_gmt":"2026-07-22T11:08:24","slug":"500-internal-server-error-cozumu","status":"publish","type":"post","link":"https:\/\/saviorhost.com\/blog\/500-internal-server-error-cozumu\/","title":{"rendered":"500 internal server error \u00e7\u00f6z\u00fcm\u00fc: 2026&#8217;da Error Log Okumadan Asla Anlayamayaca\u011f\u0131n\u0131z 7 Derin Ad\u0131m"},"content":{"rendered":"<p>Ge\u00e7en hafta bir m\u00fc\u015fterimizin magento tabanl\u0131 e-ticaret sitesi, yo\u011fun bir kampanya g\u00fcn\u00fcnde aniden \u00e7\u00f6kt\u00fc. Ekranda sadece &#8220;500 Internal Server Error&#8221; yaz\u0131yordu. \u00dcr\u00fcnler sepete at\u0131lam\u0131yor, \u00f6deme sayfas\u0131 a\u00e7\u0131lm\u0131yor, sipari\u015fler u\u00e7up gidiyordu. M\u00fc\u015fteri panik halinde &#8220;site \u00e7\u00f6kt\u00fc, ne yapaca\u011f\u0131z?&#8221; diye ar\u0131yor. \u0130\u015fte tam o anda devreye giren \u015fey, bu makalede anlataca\u011f\u0131m ad\u0131mlar oldu. Bu rehberde, <strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> i\u00e7in y\u0131llard\u0131r hosting sunucular\u0131nda uygulad\u0131\u011f\u0131m\u0131z, ger\u00e7ekten i\u015fe yarayan y\u00f6ntemleri, error log okuma tekniklerini ve kal\u0131c\u0131 \u00e7\u00f6z\u00fcm stratejilerini payla\u015f\u0131yorum.<\/p>\n<p>500 hatas\u0131, hosting d\u00fcnyas\u0131n\u0131n en korkulan, en gizemli ve en \u00e7ok kar\u015f\u0131la\u015f\u0131lan sorunlar\u0131ndan biri. &#8220;Internal Server Error&#8221; mesaj\u0131 size hi\u00e7bir \u015fey s\u00f6ylemez; sadece sunucuda bir \u015feylerin ters gitti\u011fini belirtir. Sebep mi? PHP hatas\u0131, .htaccess \u00e7ak\u0131\u015fmas\u0131, bellek limiti a\u015f\u0131m\u0131, bozuk eklenti, dosya izinleri, mod_security tetiklenmesi&#8230; Liste uzar gider. Neyse ki do\u011fru te\u015fhis y\u00f6ntemleriyle bu hatay\u0131 dakikalar i\u00e7inde \u00e7\u00f6zebilirsiniz. Ve size s\u00f6z veriyorum: bu yaz\u0131y\u0131 bitirdi\u011finizde, 500 hatas\u0131n\u0131 g\u00f6rd\u00fc\u011f\u00fcn\u00fczde &#8220;eyvah&#8221; demek yerine &#8220;tamam, biliyorum&#8221; diyeceksiniz.<\/p>\n<div class=\"key-takeaways\" style=\"background: #f0f9ff; border-left: 4px solid #0ea5e9; padding: 20px; margin: 20px 0; border-radius: 8px;\">\n<h3 id=\"%f0%9f%93%8b-onemli-noktalar\">\ud83d\udccb \u00d6nemli Noktalar<\/h3>\n<ul>\n<li>500 hatas\u0131n\u0131n temel sebebi sunucu taraf\u0131ndaki bir problemdir, istemci taraf\u0131nda de\u011fil<\/li>\n<li>Hatan\u0131n \u00e7\u00f6z\u00fcm\u00fc i\u00e7in mutlaka <strong>error log<\/strong> dosyalar\u0131n\u0131 okuman\u0131z ve anlaman\u0131z gerekir<\/li>\n<li>WordPress, Magento, PrestaShop gibi CMS&#8217;lerde eklenti\/tema \u00e7ak\u0131\u015fmalar\u0131 en s\u0131k kar\u015f\u0131la\u015f\u0131lan tetikleyicilerdir<\/li>\n<li>.htaccess dosyas\u0131 bozuklu\u011fu ve PHP bellek limiti a\u015f\u0131m\u0131, payla\u015f\u0131ml\u0131 hostinglerde 500 hatas\u0131n\u0131n en b\u00fcy\u00fck sebeplerindendir<\/li>\n<li>\u00c7\u00f6z\u00fcm sonras\u0131 kal\u0131c\u0131 \u00f6nlemler alarak hatan\u0131n tekrarlamas\u0131n\u0131 engelleyebilirsiniz<\/li>\n<li>Kaliteli bir hosting altyap\u0131s\u0131 (Ryzen 9 i\u015flemci, NVMe SSD) 500 hatalar\u0131n\u0131 \u00f6nemli \u00f6l\u00e7\u00fcde azalt\u0131r<\/li>\n<\/ul>\n<\/div>\n<div class=\"wp-block-rank-math-toc-block table-of-contents\" role=\"navigation\" aria-label=\"\u0130\u00e7indekiler\">\n<h2 id=\"icindekiler\">\u0130\u00e7indekiler<\/h2>\n<ul>\n<li><a href=\"#500-hatasi-nedir\">500 Internal Server Error Nedir? Size Ne Anlatmaya \u00c7al\u0131\u015f\u0131r?<\/a><\/li>\n<li><a href=\"#error-log-okuma\">Error Log Okuma Sanat\u0131: 500 Hatas\u0131n\u0131n \u015eifresini \u00c7\u00f6zmek<\/a><\/li>\n<li><a href=\"#wordpress-500-hatalari\">WordPress\u2019te 500 Internal Server Error: En S\u0131k 3 Senaryo ve \u00c7\u00f6z\u00fcmleri<\/a><\/li>\n<li><a href=\"#htaccess-sorunlari\">.htaccess Dosyas\u0131 Bozuklu\u011fu: 500 Hatas\u0131n\u0131n En Sinsi Sebebi<\/a><\/li>\n<li><a href=\"#php-hafiza-limiti\">PHP Haf\u0131za Limiti ve Zaman A\u015f\u0131m\u0131: Kaynak Yetersizli\u011fi Kaynakl\u0131 500 Hatalar\u0131<\/a><\/li>\n<li><a href=\"#dosya-izinleri\">Dosya ve Klas\u00f6r \u0130zinleri Yanl\u0131\u015f m\u0131? Apache\/Nginx Perspektifinden \u00c7\u00f6z\u00fcm<\/a><\/li>\n<li><a href=\"#mod-security\">ModSecurity ve Sunucu G\u00fcvenlik Kurallar\u0131: Yanl\u0131\u015f Pozitif Tetiklemeler<\/a><\/li>\n<li><a href=\"#hosting-kaynakli-500\">Hosting Kaynakl\u0131 500 Hatalar\u0131: Altyap\u0131 Yetersizli\u011fi mi?<\/a><\/li>\n<li><a href=\"#onleyici-stratejiler\">500 Hatas\u0131n\u0131 Kal\u0131c\u0131 Olarak \u00d6nlemek \u0130\u00e7in 5 Stratejik Ad\u0131m<\/a><\/li>\n<li><a href=\"#sss\">S\u0131k\u00e7a Sorulan Sorular<\/a><\/li>\n<\/ul>\n<\/div>\n<h2 id=\"500-hatasi-nedir\">500 Internal Server Error Nedir? Size Ne Anlatmaya \u00c7al\u0131\u015f\u0131r?<\/h2>\n<figure class=\"wp-block-image size-large sm-inline-image\"><img decoding=\"async\" src=\"https:\/\/saviorhost.com\/blog\/wp-content\/uploads\/2026\/07\/500-Internal-Server-Error-hata-mesajinin-bir-web-1784712576.jpg\" alt=\"500 Internal Server Error hata mesaj\u0131n\u0131n bir web taray\u0131c\u0131s\u0131nda nas\u0131l g\u00f6r\u00fcnd\u00fc\u011f\u00fcn\u00fc g\u00f6steren ekran g\u00f6r\u00fcnt\u00fcs\u00fc. Taray\u0131c\u0131 penceresinde b\u00fcy\u00fck beyaz bir arkaplan \u00fczerinde &quot;500 Internal Server Error&quot; yaz\u0131s\u0131 ve alt\u0131nda &quot;The server encountered an internal error or misconfiguration and was unable to complete your request&quot; \u015feklinde a\u00e7\u0131klama metni g\u00f6r\u00fcn\u00fcyor. Modern Chrome taray\u0131c\u0131 aray\u00fcz\u00fc, adres \u00e7ubu\u011funda sorunlu URL g\u00f6r\u00fcn\u00fcyor. Sa\u011f \u00fcst k\u00f6\u015fede k\u0131rm\u0131z\u0131 bir uyar\u0131 ikonu var. G\u00f6rsel temiz, kurumsal ve e\u011fitici bir tonda, 1920x1080 \u00e7\u00f6z\u00fcn\u00fcrl\u00fckte.\" \/><\/figure>\n<p><strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> aramas\u0131 yapan \u00e7o\u011fu ki\u015fi, asl\u0131nda hatan\u0131n ne anlama geldi\u011fini tam olarak bilmez. HTTP protokol\u00fcnde 500 hata kodu, sunucunun beklenmedik bir durumla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131 ve iste\u011fi yerine getiremedi\u011fini belirtir. Bu, &#8220;ben bir \u015fey yapt\u0131m ama ne oldu\u011funu bilmiyorum&#8221; diyen sunucunun \u00e7aresiz \u00e7\u0131\u011fl\u0131\u011f\u0131d\u0131r.<\/p>\n<p>Peki pratikte ne oluyor? Kullan\u0131c\u0131 sitenize girmeye \u00e7al\u0131\u015ft\u0131\u011f\u0131nda web sunucusu (Apache, Nginx, LiteSpeed) iste\u011fi al\u0131r, PHP&#8217;ye iletir. PHP kodu \u00e7al\u0131\u015ft\u0131rmaya ba\u015flar. Ancak bir yerde i\u015fler ters gider: belki bir fonksiyon tan\u0131mlanmam\u0131\u015ft\u0131r, belki bir dosya eksiktir, belki de bellek yetersiz kalm\u0131\u015ft\u0131r. Sunucu bu hatay\u0131 yakalayamaz veya yakalasa da kullan\u0131c\u0131ya g\u00f6sterecek uygun bir hata sayfas\u0131 bulamaz ve genel &#8220;500&#8221; kodunu d\u00f6nd\u00fcr\u00fcr.<\/p>\n<p>Bizim Saviorhost olarak y\u00f6netti\u011fimiz y\u00fczlerce sunucuda g\u00f6rd\u00fc\u011f\u00fcm\u00fcz en yayg\u0131n 500 hata senaryolar\u0131 \u015funlar:<\/p>\n<ul>\n<li><strong>WordPress eklenti\/tema \u00e7ak\u0131\u015fmalar\u0131:<\/strong> \u00d6zellikle g\u00fcncelleme sonras\u0131 uyumsuzluklar<\/li>\n<li><strong>PHP s\u00fcr\u00fcm uyu\u015fmazl\u0131\u011f\u0131:<\/strong> Sitenizin PHP 7.4 i\u00e7in yaz\u0131lm\u0131\u015f bir kodu PHP 8.2&#8217;de \u00e7al\u0131\u015ft\u0131rmaya \u00e7al\u0131\u015fmas\u0131<\/li>\n<li><strong>Bellek limiti a\u015f\u0131m\u0131:<\/strong> WooCommerce gibi a\u011f\u0131r eklentilerin PHP memory_limit&#8217;i doldurmas\u0131<\/li>\n<li><strong>Bozuk .htaccess:<\/strong> Yanl\u0131\u015f bir RewriteRule veya eksik bir mod\u00fcl referans\u0131<\/li>\n<li><strong>Dosya izin hatalar\u0131:<\/strong> 777 verilmi\u015f bir klas\u00f6r veya 444 verilmi\u015f bir PHP dosyas\u0131<\/li>\n<li><strong>ModSecurity yanl\u0131\u015f pozitifleri:<\/strong> G\u00fcvenlik duvar\u0131n\u0131n masum bir iste\u011fi sald\u0131r\u0131 sanmas\u0131<\/li>\n<\/ul>\n<p>Bunlar\u0131n her biri farkl\u0131 bir \u00e7\u00f6z\u00fcm gerektirir. \u0130\u015fte bu y\u00fczden &#8220;500 hatas\u0131 nas\u0131l \u00e7\u00f6z\u00fcl\u00fcr&#8221; sorusunun tek bir cevab\u0131 yoktur. Ama ortak bir ba\u015flang\u0131\u00e7 noktas\u0131 vard\u0131r: <strong>error log okumak<\/strong>.<\/p>\n<h2 id=\"error-log-okuma\">Error Log Okuma Sanat\u0131: 500 Hatas\u0131n\u0131n \u015eifresini \u00c7\u00f6zmek<\/h2>\n<figure class=\"wp-block-image size-large sm-inline-image\"><img decoding=\"async\" src=\"https:\/\/saviorhost.com\/blog\/wp-content\/uploads\/2026\/07\/Bir-hosting-kontrol-panelinde-KeyHelp-error-log-1784712582.jpg\" alt=\"Bir hosting kontrol panelinde (KeyHelp) error log ekran\u0131n\u0131n detayl\u0131 g\u00f6r\u00fcnt\u00fcs\u00fc. Ekranda PHP fatal error mesajlar\u0131, zaman damgalar\u0131, dosya yollar\u0131 ve hata sat\u0131r numaralar\u0131 k\u0131rm\u0131z\u0131 renkle vurgulanm\u0131\u015f halde g\u00f6r\u00fcn\u00fcyor. Aray\u00fcz temiz, modern bir kontrol paneli tasar\u0131m\u0131nda, log sat\u0131rlar\u0131 net okunabilir \u015fekilde. E\u011fitici bir ekran g\u00f6r\u00fcnt\u00fcs\u00fc, 1920x1080.\" \/><\/figure>\n<p>E\u011fer 500 hatas\u0131yla kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131zda yapman\u0131z gereken ilk ve en \u00f6nemli \u015fey, sunucu loglar\u0131n\u0131 kontrol etmektir. Error log olmadan bu hatay\u0131 \u00e7\u00f6zmeye \u00e7al\u0131\u015fmak, karanl\u0131kta el yordam\u0131yla y\u00fcr\u00fcmeye benzer. Bazen \u015fans eseri do\u011fru yere dokunursunuz, ama \u00e7o\u011fu zaman vakit kaybedersiniz.<\/p>\n<h3 id=\"apache-error-log-nerede-bulunur-ve-nasil-okunur\">Apache Error Log Nerede Bulunur ve Nas\u0131l Okunur?<\/h3>\n<p>cPanel veya KeyHelp kullanan hosting hesaplar\u0131nda, error log dosyalar\u0131 genellikle \u015fu konumlarda bulunur:<\/p>\n<ul>\n<li><strong>cPanel:<\/strong> <code>\/home\/kullaniciadi\/public<em>html\/error<\/em>log<\/code> veya <code>\/usr\/local\/apache\/logs\/error_log<\/code><\/li>\n<li><strong>KeyHelp:<\/strong> <code>\/home\/kullaniciadi\/logs\/<\/code> klas\u00f6r\u00fc alt\u0131nda domain bazl\u0131 log dosyalar\u0131<\/li>\n<li><strong>Plesk:<\/strong> <code>\/var\/www\/vhosts\/domain.com\/logs\/error_log<\/code><\/li>\n<li><strong>Direkt Apache\/Nginx:<\/strong> <code>\/var\/log\/apache2\/error.log<\/code> veya <code>\/var\/log\/nginx\/error.log<\/code><\/li>\n<\/ul>\n<p>Bu dosyalar\u0131 a\u00e7t\u0131\u011f\u0131n\u0131zda, kar\u015f\u0131n\u0131za \u00e7\u0131kabilecek tipik bir 500 hatas\u0131 log giri\u015fi \u015f\u00f6yle g\u00f6r\u00fcn\u00fcr:<\/p>\n<pre><code>[Mon Jan 12 14:23:45.123456 2026] [php:error] [pid 12345] [client 192.168.1.1:54321] \r\nPHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 20480 bytes) \r\nin \/home\/user\/public_html\/wp-content\/plugins\/woocommerce\/includes\/class-wc-cart.php on line 456\r\n<\/code><\/pre>\n<p>Bu log bize ne s\u00f6yl\u00fcyor? PHP&#8217;nin 256MB (268435456 byte) bellek limitine ula\u015ft\u0131\u011f\u0131n\u0131, WooCommerce sepet s\u0131n\u0131f\u0131n\u0131n 456. sat\u0131r\u0131nda ek 20KB bellek ay\u0131rmaya \u00e7al\u0131\u015f\u0131rken patlad\u0131\u011f\u0131n\u0131 a\u00e7\u0131k\u00e7a g\u00f6steriyor. \u0130\u015fte bu, <strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> i\u00e7in alt\u0131n de\u011ferinde bir bilgidir. Art\u0131k ne yapaca\u011f\u0131n\u0131z\u0131 biliyorsunuz: PHP bellek limitini art\u0131rmak veya WooCommerce&#8217;in bellek kullan\u0131m\u0131n\u0131 optimize etmek.<\/p>\n<h3 id=\"en-sik-gorulen-error-log-mesajlari-ve-anlamlari\">En S\u0131k G\u00f6r\u00fclen Error Log Mesajlar\u0131 ve Anlamlar\u0131<\/h3>\n<p>Y\u0131llar\u0131n verdi\u011fi tecr\u00fcbeyle, error loglarda en s\u0131k kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z hata mesajlar\u0131n\u0131 ve \u00e7\u00f6z\u00fcmlerini \u015f\u00f6yle \u00f6zetleyebilirim:<\/p>\n<p>| Hata Mesaj\u0131 | Anlam\u0131 | \u00c7\u00f6z\u00fcm |<\/p>\n<p>|&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8211;|&#8212;&#8212;-|<\/p>\n<p>| <code>PHP Fatal error: Allowed memory size exhausted<\/code> | PHP bellek limiti a\u015f\u0131ld\u0131 | memory_limit de\u011ferini 256M veya 512M yap\u0131n |<\/p>\n<p>| <code>PHP Parse error: syntax error, unexpected<\/code> | Kodda yaz\u0131m hatas\u0131 var | \u0130lgili dosyay\u0131 d\u00fczeltin veya eski haline d\u00f6nd\u00fcr\u00fcn |<\/p>\n<p>| <code>PHP Fatal error: Call to undefined function<\/code> | Bir fonksiyon bulunamad\u0131 | Eksik eklentiyi kurun veya PHP s\u00fcr\u00fcm\u00fcn\u00fc kontrol edin |<\/p>\n<p>| <code>mod_security: Access denied with code 500<\/code> | ModSecurity iste\u011fi engelledi | \u0130lgili kural\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n veya whitelist&#8217;e ekleyin |<\/p>\n<p>| <code>.htaccess: Invalid command 'RewriteEngine'<\/code> | .htaccess&#8217;te ge\u00e7ersiz komut | .htaccess dosyas\u0131n\u0131 d\u00fczeltin veya yeniden olu\u015fturun |<\/p>\n<p>| <code>AH00124: Request exceeded the limit of 10 internal redirects<\/code> | Sonsuz y\u00f6nlendirme d\u00f6ng\u00fcs\u00fc | .htaccess y\u00f6nlendirme kurallar\u0131n\u0131 kontrol edin |<\/p>\n<p>Bu tablo, en s\u0131k kar\u015f\u0131la\u015f\u0131lan <strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> senaryolar\u0131n\u0131 \u00f6zetliyor. Ancak unutmay\u0131n: her hata mesaj\u0131 farkl\u0131 bir aksiyon gerektirir. Log okumay\u0131 \u00f6\u011frenmek, hosting y\u00f6netiminde ustala\u015fman\u0131n temel ta\u015f\u0131d\u0131r.<\/p>\n<h2 id=\"wordpress-500-hatalari\">WordPress&#8217;te 500 Internal Server Error: En S\u0131k 3 Senaryo ve \u00c7\u00f6z\u00fcmleri<\/h2>\n<figure class=\"wp-block-image size-large sm-inline-image\"><img decoding=\"async\" src=\"https:\/\/saviorhost.com\/blog\/wp-content\/uploads\/2026\/07\/Bir-FTP-istemcisinde-FileZilla-wp-contentplugin-1784712588.jpg\" alt=\"Bir FTP istemcisinde (FileZilla) wp-content\/plugins klas\u00f6r\u00fcn\u00fcn g\u00f6r\u00fcnt\u00fcs\u00fc. Bir eklenti klas\u00f6r\u00fcn\u00fcn ad\u0131 &quot;woocommerce_devre_disi&quot; olarak de\u011fi\u015ftirilmi\u015f, yan\u0131nda normal eklenti klas\u00f6rleri g\u00f6r\u00fcn\u00fcyor. Sa\u011f tarafta uzak sunucu dosya yap\u0131s\u0131, sol tarafta yerel bilgisayar. E\u011fitici bir g\u00f6rsel, 1920x1080.\" \/><\/figure>\n<p>WordPress, d\u00fcnyan\u0131n en pop\u00fcler i\u00e7erik y\u00f6netim sistemi. Ve tahmin edin ne oldu? Ayn\u0131 zamanda 500 hatalar\u0131n\u0131n da en s\u0131k g\u00f6r\u00fcld\u00fc\u011f\u00fc platform. Site sahiplerinin bize en \u00e7ok dan\u0131\u015ft\u0131\u011f\u0131 konu, WordPress&#8217;te aniden beliren bu can s\u0131k\u0131c\u0131 hatad\u0131r. Gelin, en yayg\u0131n \u00fc\u00e7 senaryoyu inceleyelim.<\/p>\n<h3 id=\"senaryo-1-eklenti-veya-tema-guncellemesi-sonrasi-500-hatasi\">Senaryo 1: Eklenti veya Tema G\u00fcncellemesi Sonras\u0131 500 Hatas\u0131<\/h3>\n<p>Bu, en klasik senaryodur. Bir eklentiyi g\u00fcncellediniz, sayfay\u0131 yenilediniz ve kar\u015f\u0131n\u0131zda bembeyaz bir ekran veya 500 hatas\u0131. Pani\u011fe gerek yok. \u00c7\u00f6z\u00fcm\u00fc basit:<\/p>\n<ol>\n<li><strong>FTP veya hosting dosya y\u00f6neticisi<\/strong> ile sitenize ba\u011flan\u0131n<\/li>\n<li><code>\/wp-content\/plugins\/<\/code> klas\u00f6r\u00fcne gidin<\/li>\n<li>En son g\u00fcncelledi\u011finiz eklentinin klas\u00f6r\u00fcn\u00fc bulun (klas\u00f6r ad\u0131n\u0131 de\u011fi\u015ftirin, \u00f6rne\u011fin <code>woocommerce<\/code> \u2192 <code>woocommerce<em>devre<\/em>disi<\/code>)<\/li>\n<li>Siteyi yenileyin. Hata d\u00fczeldiyse, sorun o eklentidir<\/li>\n<li>Eklentiyi silip temiz bir \u015fekilde yeniden kurun veya bir \u00f6nceki s\u00fcr\u00fcme d\u00f6n\u00fcn<\/li>\n<\/ol>\n<p>Bu y\u00f6ntemi anlat\u0131rken hat\u0131rl\u0131yorum, bir m\u00fc\u015fterimizin sitesinde Yoast SEO g\u00fcncellemesi sonras\u0131 t\u00fcm site \u00e7\u00f6km\u00fc\u015ft\u00fc. FTP&#8217;ye ba\u011flan\u0131p eklenti klas\u00f6r\u00fcn\u00fc deaktive etti\u011fimizde site an\u0131nda d\u00fczeldi. M\u00fc\u015fteri &#8220;bu kadar basit miydi?&#8221; diye \u015fa\u015f\u0131rm\u0131\u015ft\u0131. Evet, bazen \u00e7\u00f6z\u00fcm bu kadar basit.<\/p>\n<h3 id=\"senaryo-2-wordpress-cekirdek-dosyasi-bozulmasi\">Senaryo 2: WordPress \u00c7ekirdek Dosyas\u0131 Bozulmas\u0131<\/h3>\n<p>Bazen WordPress&#8217;in kendi \u00e7ekirdek dosyalar\u0131 bozulabilir. \u00d6zellikle eksik veya yar\u0131m kalm\u0131\u015f g\u00fcncellemeler, FTP&#8217;de ba\u011flant\u0131 kopmas\u0131 gibi durumlarda wp-admin ve wp-includes klas\u00f6rlerindeki dosyalar hasar g\u00f6rebilir.<\/p>\n<p>\u00c7\u00f6z\u00fcm i\u00e7in:<\/p>\n<ul>\n<li>WordPress&#8217;in son s\u00fcr\u00fcm\u00fcn\u00fc wordpress.org&#8217;dan indirin<\/li>\n<li><code>wp-admin<\/code> ve <code>wp-includes<\/code> klas\u00f6rlerini FTP ile sunucuya y\u00fckleyip mevcut dosyalar\u0131n \u00fczerine yaz\u0131n<\/li>\n<li><code>wp-content<\/code> klas\u00f6r\u00fcne asla dokunmay\u0131n! (temalar, eklentiler, y\u00fcklenen medyalar oradad\u0131r)<\/li>\n<\/ul>\n<p>Bu i\u015flem s\u0131ras\u0131nda dikkat etmeniz gereken kritik nokta: <strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> i\u00e7in \u00e7ekirdek dosyalar\u0131 g\u00fcncellerken <code>wp-config.php<\/code> ve <code>.htaccess<\/code> dosyalar\u0131n\u0131 yanl\u0131\u015fl\u0131kla silmeyin veya de\u011fi\u015ftirmeyin. Bu iki dosya, sitenizin belkemi\u011fidir.<\/p>\n<h3 id=\"senaryo-3-php-surum-uyusmazligi\">Senaryo 3: PHP S\u00fcr\u00fcm Uyu\u015fmazl\u0131\u011f\u0131<\/h3>\n<p>WordPress&#8217;iniz PHP 7.4&#8217;te sorunsuz \u00e7al\u0131\u015f\u0131rken, hosting panelinden PHP 8.2&#8217;ye ge\u00e7i\u015f yapt\u0131\u011f\u0131n\u0131zda siteniz 500 hatas\u0131 vermeye ba\u015flad\u0131ysa, su\u00e7lu b\u00fcy\u00fck ihtimalle PHP s\u00fcr\u00fcm\u00fcd\u00fcr. Nedeni: baz\u0131 eski eklentiler veya temalar, yeni PHP s\u00fcr\u00fcmlerinde kald\u0131r\u0131lm\u0131\u015f (deprecated) fonksiyonlar\u0131 kullan\u0131yor olabilir.<\/p>\n<p>Pratik \u00e7\u00f6z\u00fcm:<\/p>\n<ol>\n<li>Hosting panelinizden PHP s\u00fcr\u00fcm\u00fcn\u00fc tekrar eski haline d\u00f6nd\u00fcr\u00fcn (\u00f6rn: PHP 7.4)<\/li>\n<li>T\u00fcm eklenti ve temalar\u0131n\u0131z\u0131 g\u00fcncelleyin<\/li>\n<li>PHP 8.0 veya 8.1 gibi bir ara s\u00fcr\u00fcme ge\u00e7ip test edin<\/li>\n<li>Hata loglar\u0131n\u0131 kontrol ederek hangi eklentinin sorun \u00e7\u0131kard\u0131\u011f\u0131n\u0131 tespit edin.<\/li>\n<\/ol>\n<p>Saviorhost&#8217;da PHP s\u00fcr\u00fcmleri aras\u0131nda ge\u00e7i\u015f yapmak son derece kolayd\u0131r; KeyHelp panelimiz sayesinde her domain i\u00e7in ayr\u0131 ayr\u0131 PHP s\u00fcr\u00fcm\u00fc belirleyebilirsiniz. Hatta PHP 8.2 ve 8.3 gibi en g\u00fcncel s\u00fcr\u00fcmleri de destekliyoruz. E\u011fer hosting altyap\u0131n\u0131z bu esnekli\u011fi sunmuyorsa, sitenizin h\u0131z\u0131ndan ve g\u00fcvenli\u011finden feragat ediyorsunuz demektir. <strong>Linux hosting paketlerimizi<\/strong> bu a\u00e7\u0131dan incelemenizi \u00f6neririm.<\/p>\n<h2 id=\"htaccess-sorunlari\">.htaccess Dosyas\u0131 Bozuklu\u011fu: 500 Hatas\u0131n\u0131n En Sinsi Sebebi<\/h2>\n<p>\u015eimdi gelelim en can s\u0131k\u0131c\u0131 ama bir o kadar da yayg\u0131n bir sebebe: .htaccess dosyas\u0131. Bu k\u00fc\u00e7\u00fck ama g\u00fc\u00e7l\u00fc yap\u0131land\u0131rma dosyas\u0131, Apache sunucularda URL y\u00f6nlendirme, g\u00fcvenlik kurallar\u0131, \u00f6nbellekleme ve daha bir\u00e7ok \u015feyi kontrol eder. Ancak i\u00e7indeki tek bir yanl\u0131\u015f karakter, t\u00fcm sitenizi 500 hatas\u0131na bo\u011fabilir.<\/p>\n<h3 id=\"bozuk-htaccess-belirtileri-ve-hizli-cozum\">Bozuk .htaccess Belirtileri ve H\u0131zl\u0131 \u00c7\u00f6z\u00fcm<\/h3>\n<p>E\u011fer sitenizin t\u00fcm sayfalar\u0131 ayn\u0131 anda 500 hatas\u0131 vermeye ba\u015flad\u0131ysa, \u00f6zellikle de yak\u0131n zamanda bir SEO eklentisi y\u00fcklediyseniz veya .htaccess dosyas\u0131n\u0131 manuel olarak d\u00fczenlediyseniz, sorun b\u00fcy\u00fck ihtimalle bu dosyadad\u0131r.<\/p>\n<p>H\u0131zl\u0131 \u00e7\u00f6z\u00fcm ad\u0131mlar\u0131:<\/p>\n<ol>\n<li>FTP ile sitenizin ana dizinine (<code>public_html<\/code>) ba\u011flan\u0131n<\/li>\n<li><code>.htaccess<\/code> dosyas\u0131n\u0131 bilgisayar\u0131n\u0131za indirip yedekleyin (kritik!)<\/li>\n<li>Sunucudaki <code>.htaccess<\/code> dosyas\u0131n\u0131 silin veya ad\u0131n\u0131 <code>.htaccess_bak<\/code> olarak de\u011fi\u015ftirin<\/li>\n<li>Sitenizi yenileyin. Hata d\u00fczeldiyse, sorun .htaccess kaynakl\u0131d\u0131r<\/li>\n<li>WordPress kullan\u0131yorsan\u0131z, Ayarlar &gt; Kal\u0131c\u0131 Ba\u011flant\u0131lar sayfas\u0131na gidip &#8220;De\u011fi\u015fiklikleri Kaydet&#8221; butonuna t\u0131klayarak yeni ve temiz bir .htaccess olu\u015fturabilirsiniz<\/li>\n<\/ol>\n<h3 id=\"htaccesste-en-sik-yapilan-3-kritik-hata\">.htaccess&#8217;te En S\u0131k Yap\u0131lan 3 Kritik Hata<\/h3>\n<p>Yapt\u0131\u011f\u0131m\u0131z sunucu incelemelerinde, kullan\u0131c\u0131lar\u0131n .htaccess&#8217;te en s\u0131k d\u00fc\u015ft\u00fc\u011f\u00fc hatalar \u015funlard\u0131r:<\/p>\n<ol>\n<li><strong>RewriteBase eksikli\u011fi:<\/strong> Alt dizinde \u00e7al\u0131\u015fan WordPress sitelerinde <code>RewriteBase \/altsite\/<\/code> sat\u0131r\u0131n\u0131n unutulmas\u0131, sonsuz y\u00f6nlendirme d\u00f6ng\u00fcs\u00fcne ve 500 hatas\u0131na yol a\u00e7ar<\/li>\n<\/ol>\n<ol>\n<li><strong>php<em>flag ve php<\/em>value direktifleri:<\/strong> Payla\u015f\u0131ml\u0131 hostinglerde bu direktifler genellikle k\u0131s\u0131tlanm\u0131\u015ft\u0131r. .htaccess&#8217;e <code>php<em>flag display<\/em>errors on<\/code> gibi bir sat\u0131r eklemek, direkt 500 hatas\u0131 olu\u015fturur. Bunun yerine PHP ayarlar\u0131n\u0131 <code>php.ini<\/code> veya <code>.user.ini<\/code> dosyas\u0131yla yapman\u0131z gerekir.<\/li>\n<\/ol>\n<ol>\n<li><strong>Eksik mod\u00fcl referans\u0131:<\/strong> <code>RewriteEngine On<\/code> yazd\u0131n\u0131z ama sunucuda mod<em>rewrite mod\u00fcl\u00fc aktif de\u011filse, kar\u015f\u0131n\u0131zda 500 hatas\u0131 bulursunuz. Keza <code>Header set X-Frame-Options DENY<\/code> yazd\u0131\u011f\u0131n\u0131zda mod<\/em>headers aktif de\u011filse, yine 500 hatas\u0131 al\u0131rs\u0131n\u0131z.<\/li>\n<\/ol>\n<p>\u0130\u015fin p\u00fcf noktas\u0131 \u015fu: .htaccess de\u011fi\u015fikliklerini her zaman bir yedek alarak yap\u0131n. Ve her de\u011fi\u015fiklikten sonra siteyi kontrol edin. Toplu de\u011fi\u015fiklik yap\u0131p &#8220;acaba hangisi bozdu&#8221; diye saatlerce u\u011fra\u015fmay\u0131n.<\/p>\n<h2 id=\"php-hafiza-limiti\">PHP Haf\u0131za Limiti ve Zaman A\u015f\u0131m\u0131: Kaynak Yetersizli\u011fi Kaynakl\u0131 500 Hatalar\u0131<\/h2>\n<p>Bu b\u00f6l\u00fcm\u00fc \u00f6zellikle e-ticaret sitesi sahipleri dikkatle okumal\u0131. WooCommerce, Magento veya PrestaShop gibi platformlar, \u00f6zellikle yo\u011fun \u00fcr\u00fcn kataloglar\u0131nda ve kampanya d\u00f6nemlerinde PHP bellek limitini zorlayarak 500 hatas\u0131na sebep olur. Peki bunu nas\u0131l anlar ve \u00e7\u00f6zeriz?<\/p>\n<h3 id=\"php-memory_limit-nasil-artirilir\">PHP memory_limit Nas\u0131l Art\u0131r\u0131l\u0131r?<\/h3>\n<p>Error logunuzda &#8220;Allowed memory size of X bytes exhausted&#8221; mesaj\u0131n\u0131 g\u00f6rd\u00fcyseniz, yapman\u0131z gereken \u015fey PHP bellek limitini art\u0131rmakt\u0131r. Bunu birka\u00e7 farkl\u0131 y\u00f6ntemle yapabilirsiniz:<\/p>\n<p><strong>Y\u00f6ntem 1: php.ini veya .user.ini dosyas\u0131yla (\u00f6nerilen)<\/strong><\/p>\n<pre><code class=\"language-ini\">memory_limit = 512M\r\nmax_execution_time = 300\r\nmax_input_vars = 3000\r\npost_max_size = 128M\r\nupload_max_filesize = 128M\r\n<\/code><\/pre>\n<p>Bu dosyay\u0131 sitenizin ana dizinine (public_html) <code>.user.ini<\/code> ad\u0131yla y\u00fckleyin. KeyHelp ve cPanel gibi modern kontrol panelleri bu dosyay\u0131 otomatik olarak tan\u0131r.<\/p>\n<p><strong>Y\u00f6ntem 2: wp-config.php ile (sadece WordPress)<\/strong><\/p>\n<pre><code class=\"language-php\">define('WP_MEMORY_LIMIT', '512M');\r\ndefine('WP_MAX_MEMORY_LIMIT', '512M');\r\n<\/code><\/pre>\n<p>WordPress i\u00e7in \u00f6zel bu y\u00f6ntem, yaln\u0131zca WordPress kaynakl\u0131 bellek sorunlar\u0131n\u0131 \u00e7\u00f6zer.<\/p>\n<p><strong>Y\u00f6ntem 3: Hosting kontrol panelinden<\/strong><\/p>\n<p>E\u011fer hosting firman\u0131z izin veriyorsa, kontrol paneli \u00fczerinden PHP ayarlar\u0131n\u0131 de\u011fi\u015ftirebilirsiniz. Saviorhost&#8217;da bu ayarlar\u0131 KeyHelp panelimizin &#8220;Domain Ayarlar\u0131 &gt; PHP Yap\u0131land\u0131rmas\u0131&#8221; b\u00f6l\u00fcm\u00fcnden saniyeler i\u00e7inde yapabilirsiniz.<\/p>\n<h3 id=\"e-ticaret-siteleri-icin-onerilen-php-limitleri\">E-Ticaret Siteleri \u0130\u00e7in \u00d6nerilen PHP Limitleri<\/h3>\n<p>Kendi deneyimlerimize dayanarak, farkl\u0131 platformlar i\u00e7in \u00f6nerdi\u011fimiz minimum de\u011ferleri payla\u015fay\u0131m:<\/p>\n<p>| Platform | memory<em>limit | max<\/em>execution<em>time | max<\/em>input_vars |<\/p>\n<p>|&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-|&#8212;&#8212;&#8212;&#8212;&#8212;-|<\/p>\n<p>| Basit WordPress (blog) | 256M | 120 | 1000 |<\/p>\n<p>| WooCommerce (0-100 \u00fcr\u00fcn) | 512M | 180 | 2000 |<\/p>\n<p>| WooCommerce (100-500 \u00fcr\u00fcn) | 512M | 300 | 3000 |<\/p>\n<p>| WooCommerce (500+ \u00fcr\u00fcn) | 1024M | 600 | 5000 |<\/p>\n<p>| Magento 2 | 2048M | 1800 | 10000 |<\/p>\n<p>| PrestaShop | 512M | 300 | 3000 |<\/p>\n<p>Bu de\u011ferler, <strong>500 internal server error \u00e7\u00f6z\u00fcm\u00fc<\/strong> i\u00e7in ba\u015flang\u0131\u00e7 noktas\u0131 olarak d\u00fc\u015f\u00fcn\u00fclmelidir. Ancak unutmay\u0131n: bellek limitini art\u0131rmak ge\u00e7ici bir \u00e7\u00f6z\u00fcmd\u00fcr. As\u0131l mesele, sitenizin neden bu kadar bellek t\u00fcketti\u011fini ara\u015ft\u0131rmakt\u0131r. Belki bir eklenti gereksiz yere bellek s\u00f6m\u00fcr\u00fcyordur, belki de veritaban\u0131 sorgular\u0131n\u0131z optimize edilmemi\u015ftir.<\/p>\n<p>Bu noktada hosting altyap\u0131n\u0131z\u0131n kalitesi devreye girer. AMD Ryzen 9 7900 i\u015flemcili, NVMe SSD depolamal\u0131 bir hosting paketinde, ayn\u0131 PHP kodlar\u0131 \u00e7ok daha h\u0131zl\u0131 \u00e7al\u0131\u015f\u0131r ve bellek limitlerine ula\u015fma ihtimali d\u00fc\u015fer. <strong>E-ticaret hosting \u00e7\u00f6z\u00fcmlerimizi<\/strong> bu a\u00e7\u0131dan de\u011ferlendirmenizi \u00f6neririm.<\/p>\n<h2 id=\"dosya-izinleri\">Dosya ve Klas\u00f6r \u0130zinleri Yanl\u0131\u015f m\u0131? Apache\/Nginx Perspektifinden \u00c7\u00f6z\u00fcm<\/h2>\n<p>Dosya izinleri, hosting g\u00fcvenli\u011finin temelidir. Ancak yanl\u0131\u015f yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131nda, sitenizin tamamen eri\u015filmez hale gelmesine ve 500 hatas\u0131 vermesine yol a\u00e7abilir. Bu \u00f6zellikle manuel kurulum yap\u0131lan sitelerde veya site ta\u015f\u0131ma i\u015flemleri sonras\u0131nda s\u0131k kar\u015f\u0131la\u015ft\u0131\u011f\u0131m\u0131z bir durumdur.<\/p>\n<h3 id=\"dogru-dosya-ve-klasor-izinleri-ne-olmali\">Do\u011fru Dosya ve Klas\u00f6r \u0130zinleri Ne Olmal\u0131?<\/h3>\n<p>Linux sunucularda dosya ve klas\u00f6r izinleri, say\u0131sal (chmod) de\u011ferlerle ifade edilir. Peki ideal de\u011ferler nedir?<\/p>\n<ul>\n<li><strong>PHP dosyalar\u0131 (.php):<\/strong> 644 (salt okunur &#8211; sahibi yazabilir)<\/li>\n<li><strong>Klas\u00f6rler:<\/strong> 755 (sahibi tam yetkili, di\u011ferleri salt okunur ve \u00e7al\u0131\u015ft\u0131rabilir)<\/li>\n<li><strong>wp-config.php, .htaccess gibi kritik dosyalar:<\/strong> 440 veya 400 (sadece okunabilir, yaz\u0131lamaz)<\/li>\n<li><strong>Y\u00fckleme klas\u00f6rleri (uploads):<\/strong> 755 (klas\u00f6r), 644 (dosyalar)<\/li>\n<li><strong>\u00d6nbellek ve log klas\u00f6rleri:<\/strong> 755 (baz\u0131 durumlarda 775 gerekebilir)<\/li>\n<\/ul>\n<p>Hemen belirteyim:<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ge\u00e7en hafta bir m\u00fc\u015fterimizin magento tabanl\u0131 e-ticaret sitesi, yo\u011fun bir kampanya g\u00fcn\u00fcnde aniden \u00e7\u00f6kt\u00fc. Ekranda sadece &#8220;500 Internal Server Error&#8221;&#8230;<\/p>\n","protected":false},"author":1,"featured_media":2493,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[75,78],"tags":[],"class_list":["post-2488","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hosting","category-linux"],"_links":{"self":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2488","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/comments?post=2488"}],"version-history":[{"count":3,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2488\/revisions"}],"predecessor-version":[{"id":2495,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/posts\/2488\/revisions\/2495"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/media\/2493"}],"wp:attachment":[{"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/media?parent=2488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/categories?post=2488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/saviorhost.com\/blog\/wp-json\/wp\/v2\/tags?post=2488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}