Merhaba arkadaşlar,
Bir web sitesi yaptık, canavar gibi çalışıyor. Her şeyin güzel olduğunu test ettik. Tam mutluluktan havaya uçacaksınız ki birde ne göresiniz. Saatler yanlış. Ya bir veya bir kaç saat ileri ya da geri. Canınız sıkıldı ve hemen date_default_timezone_set kullanarak Europe/Istanbul olarak ayarladınız zaman diliminizi ve problemin geçtiğinden emin bir şekilde kaydedip sayfayı yenilediniz. Birde bakmışsınız sıkıntınız hala devam ediyor. (PHP’nin desteklediği zaman dilimleri için buraya tıklayınız.)
İşin aslı sunucunuz zaten Europe/Istanbul olarak ayarlıydı fakat sunucunuzun saati yanlıştı. Bu sefer kendine zaman dilimi olarak bizden iki saat geri olan bir bölge seçebilirsiniz ama bu da sağlıklı bir çözüm değil. Sonuçta hata var ortada, hatayı gidermek yerine üstüne örtmeye çalışmak hiç doğru değil. O zaman gelelim ve sunucu saatimizi kontrol edelim.
Sunucu Saatini Nasıl Öğrenirim?
Sunucu saatini öğrenmek için date komutunu kullanırız.
1 |
date |
Bize tarih, saat ve zaman dilimini bildirir.
1 2 |
[root@trkodlama ~]# date Wed Apr 29 11:46:42 EEST 2015 |
EEST(East European Summer Time) doğu avrupa yaz saati anlamına geliyor. Yazın EEST zaman dilimindeyizdir aynı zamanda UTC+3 olarak da görebilirsiniz. Kışın ise EET(East European Time) yani doğu avrupa saati anlamına gelen dilimi kullanmaktayız. Bunu da UTC+2 olarak görebilirsiniz.
Sunucum Hangi Zaman Dilimlerini Destekliyor?
Bu sorunun cevabı için sunucunuza bakmak gerekir. Sunucunuzun desteklediği zaman dilimlerini /usr/share/zoneinfo klasöründe bulabilirsiniz. Burada dosyalar ve klasörler bulunur. Mesela Istanbul dosyası Europe klasörü altındadır.
Sunucumun Zaman Dilimini Nasıl Değiştirebilirim?
Önceki başlıkta Istanbul’un nerede olduğunu söyledim. /usr/share/zoneinfo/Europe/Istanbul da bulunur. Peki sunucumuzun zaman dilimini nasıl böyle ayarlayabiliriz?
1 |
export TZ=Europe/Istanbul |
Bu komut ile zaman diliminizi ayarlayabilirsiniz.
Sunucumun Tarih ve Saatini Nasıl Değiştirebilirim?
Artık son noktaya geldik. Zaman dilimini ayarladık fakat gördükki sunucu saatimizde yanlış. O zaman yine date komutunu kullanarak tarih ve saatimizi ayarlayalım:
1 |
date -s "29 APR 2015 09:10:00"; |
İşte bu kadar! Şu anda tarih ve saatimiz ayarlandı. Artık hiç bir problem yaşamayacaksınız :) Umarım işinize yarar ;)
Yorumlar
linux kadar saçma bir sistem olduğunu hiç sanmıyorum
linux kadar saçma bir sistem olduğunu hiç sanmıyorum