belgeler/web-development/freeBSD-php-kurulumunda-timezone-ayari.md

1.7 KiB
Raw Blame History

FreeBSD/PHP Kurulumunda Timezone Ayarı

Merhaba,

FreeBSD üzerinde kurulu PHP+Nginx web sunucumda tarih ile alakalı bazı sorunlar olduğunu farkettim. Şöyle ki sunucumda yapılan işlemlerde UTC+3 değil UTC+0 zaman dilimi kullanılıyor ve tüm işlemler 3 saat geriden yapılıyordu.

Durumdan emin olmak için bir test yapmak istedim. Saati veren bir PHP Scripti sunucumda çalıştırdım ve gerçekten de PHP işlemlerinde saat bilgisinin hatalı olduğunu farkettim. Kullandığım script ve verdiği çıktıyı aşağıya ekliyorum.

Kullandığım script;

<?php echo “Saat ” . date(“h:i:sa”); ?> 

Bu scriptin verdiği saat bilgisi şöyle;

Saat 06:38:19am

Oysa sistem saati o anda;

# date
Thu Sep  1 09:38:20 +03 2022

Sistem saati UTC+3 olduğu halde PHP Scriptleri UTC+0 olarak sonuç veriyor. Bu durumu düzeltmek için php.ini dosyasında ufak bir değişiklik yapmamız gerekiyor. FreeBSD üzerinde standart PHP kurulumunda php.ini dosyasının yolu /usr/local/etc/php.ini olarak belirleniyor. Bu dosyayııp içerisindeki şu satırı bulunuz;

;date.timezone = 

Bu satırın başındaki ; işaretini kaldırıp şu değeri verelim;

date.timezone = Europe/Istanbul

Burada ters slash işaretine dikkat edelim, normal slash konulursa ayar doğru çalışmıyor. Dosyayı kaydedip çıkarak kuruluma göre web sunucumuzu veya PHP-FPMi yeniden başlatıp sonucu kontrol edelim. Yukarıdaki scripti çağırdığımızda saat doğru geliyor ise PHP için time-zone ayarımızı başarı ile yapmışız demektir.

Lisans

Bu makale Bedreddin Şahbaz tarafından yazılmıştır. BSD-3-Clause ile ruhsatlanmıştır.