Mövzunu Açan
#0
Linux üzerinde Nginx ve PHP-FPM ile çalışırken, "socket bulunamadı" hatası oldukça yaygın bir problemdir. Bu hata genellikle Nginx’in PHP-FPM ile iletişim kuramadığı durumlarda ortaya çıkar ve genellikle birkaç temel sebebi vardır.
Öncelikle, PHP-FPM'nin doğru bir şekilde çalıştığından emin olmalısınız. PHP-FPM servisinin aktif olup olmadığını kontrol etmek için terminalde şu komutu kullanabilirsiniz:
Eğer servis çalışmıyorsa, şu komut ile başlatabilirsiniz:
Bir diğer yaygın sebep, Nginx'in PHP-FPM ile iletişim kurmak için doğru socket dosyasını kullanmamasıdır. Nginx konfigürasyon dosyasında (genellikle /etc/nginx/sites-available/default veya benzeri bir dosya) PHP-FPM ile iletişim için belirtilen socket yolunu kontrol edin. Örneğin, aşağıdaki gibi bir satır olması gerekir:
Socket yolunun doğru olup olmadığını kontrol etmek için PHP-FPM konfigürasyon dosyasını (genellikle /etc/php/7.4/fpm/pool.d/www.conf) inceleyin. Aşağıdaki satırın doğru ayarlandığından emin olun:
Eğer socket dosyası belirtilen yerde yoksa, PHP-FPM'yi yeniden başlatmayı deneyin:
Son olarak, dosya izinlerinin doğru ayarlandığından emin olun. Nginx’in PHP-FPM socket dosyasına erişim izni olması gerektiğinden, uygun izinlerin ayarlandığını kontrol edin.
Tüm bu adımları takip ettikten sonra, sorununuzun çözülüp çözülmediğini kontrol edin. Eğer hala sorun yaşıyorsanız, hata günlüğünü inceleyerek daha fazla bilgi edinebilirsiniz. Hata günlüğü genellikle /var/log/nginx/error.log veya /var/log/php7.4-fpm.log dosyalarında bulunur.
Öncelikle, PHP-FPM'nin doğru bir şekilde çalıştığından emin olmalısınız. PHP-FPM servisinin aktif olup olmadığını kontrol etmek için terminalde şu komutu kullanabilirsiniz:
CODE
1sudo systemctl status php-fpmEğer servis çalışmıyorsa, şu komut ile başlatabilirsiniz:
CODE
1sudo systemctl start php-fpmBir diğer yaygın sebep, Nginx'in PHP-FPM ile iletişim kurmak için doğru socket dosyasını kullanmamasıdır. Nginx konfigürasyon dosyasında (genellikle /etc/nginx/sites-available/default veya benzeri bir dosya) PHP-FPM ile iletişim için belirtilen socket yolunu kontrol edin. Örneğin, aşağıdaki gibi bir satır olması gerekir:
CODE
1fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;Socket yolunun doğru olup olmadığını kontrol etmek için PHP-FPM konfigürasyon dosyasını (genellikle /etc/php/7.4/fpm/pool.d/www.conf) inceleyin. Aşağıdaki satırın doğru ayarlandığından emin olun:
CODE
1listen = /var/run/php/php7.4-fpm.sockEğer socket dosyası belirtilen yerde yoksa, PHP-FPM'yi yeniden başlatmayı deneyin:
CODE
1sudo systemctl restart php-fpmSon olarak, dosya izinlerinin doğru ayarlandığından emin olun. Nginx’in PHP-FPM socket dosyasına erişim izni olması gerektiğinden, uygun izinlerin ayarlandığını kontrol edin.
Tüm bu adımları takip ettikten sonra, sorununuzun çözülüp çözülmediğini kontrol edin. Eğer hala sorun yaşıyorsanız, hata günlüğünü inceleyerek daha fazla bilgi edinebilirsiniz. Hata günlüğü genellikle /var/log/nginx/error.log veya /var/log/php7.4-fpm.log dosyalarında bulunur.