Türkiye Windows Saat Ayarı 2017

2016 Türkiye GMT+3 timezone değişikliğini Windows üzerinden nasıl gerçekleştirebiliriz.

Windows işletim sistemleri için timezone güncellenmesi;

Windows işletim sistemlerinde aşağıdaki linklerden işletim sisteminize uygun olan yamanın indirilip kurulması gerekmektedir.

Windows 10 Öncesi için

https://support.microsoft.com/en-us/kb/3192321

Windows10 ve Server 2016 için

http://www.catalog.update.microsoft.com/Search.aspx?q=3194798

PHP için timezone ayarları ;

PHP üzerinde Türkiye için saat dilimini düzeltmede 2 yol mevcut.

Bunlardan birisi, php.ini dosyasındaki timezone tanımlamasının “Europe/Istanbul” yerine “Etc/GMT-3” seçilmesidir.

Bunu Linux üzerinden bu adımlar ile yapabiliriz.

Öncelikle php.ini dosyamızı bulmak için bu kodu yazmamız gerekiyor ;

sudo php -i|grep php.ini

Örnek Çıktısı:

Loaded Configuration File => /etc/php.ini

Daha sonra php.ini dosyasını açıp içinde geçen date.timezone = “…..” alanını  date.timezone = “Etc/GMT-3”  olarak değiştirmemiz gerekmektedir.

Eğer php-fpm kullanıyorsanız;

sudo /etc/init.d/php-fpm restart

Veya Apache kullanıyorsanız;

sudo /etc/init.d/httpd restart

komutlarını girerek ayarların aktif olmasını sağlıyoruz.

Eğer kullandığımız sitemiz içerisinde kendisine ait bir zaman dilimi var ise sunucu saati geçersiz olacaktır. Bu durumda farklı bir yol izlememiz gerekecek. Sunucu saatini güncelledik fakat php saati değişmediyse kontrol etmek için uygulama kodları içinde ini_set( ‘date.timezone’, ‘Europe/Istanbul’ ); satırının geçip geçmediğini kontrol edebilirsiniz. Eğer bu kod var ise saati kendi uygulamamız içerisinde ayarlamışız yani sunucudan çekmiyor demektir.

Diğer bir yöntem: Europe/Istanbul timezone’unun GMT+3 olarak hesaplanmasını sağlamaktır. Bunun için php’nin uygulaması olan pecl timezone extension’ini kullanacağız. Bunu https://pecl.php.net/package/timezonedb adresinden inceleyebilirsiniz.

24 Ekim 2016’da yayınlanan 2016.8 versiyonu ile Türkiye’nin saat dilimi sabit olarak GMT+3 kalacak şekilde düzeltilmiştir.Linux üzerinde bu extension’ı kurmak için aşağıdaki komutu çalıştırmanız gerekecektir.

sudo pecl install timezonedb

Bittikten Sonra;

Hosting sunucularında Php.ini dosyanıza extension=timezonedb.so  satırını eklemelisiniz ve php.ini’deki saat dilimi tanımlamasının date.timezone = “Europe/Istanbul”  olarak kaldığından emin olmalısınız.

Windows’da ise https://pecl.php.net/package/timezonedb sayfasındaki güncel sürüme ait dll dosyasını indirmeniz ve php/ext klasörüne kopyalamanız gerekmektedir.

Bittikten Sonra;

Php.ini dosyanıza extension=timezonedb.dll satırını eklemelisiniz ve php.ini’deki saat dilimi tanımlamasının date.timezone = “Europe/Istanbul” olarak kaldığından emin olmalısınız.

NOT : Mysql saati sunucudan çalışır. Sunucu saatini güncellediğimizde sitemizde aktif olması için apache restart yaparken mysql üzerinde de saatin değişmesi için mutlaka mysql restart yapmamız gerekmekte. Aksi taktirde mysql üzerinde saat değişmez.

About the author /


Post your comments

Your email address will not be published. Required fields are marked *