Титла: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 14:00 Здравейте.
root@debian:/var/www# php --ini Configuration File (php.ini) Path: /etc/php5/cli Loaded Configuration File: /etc/php5/cli/php.ini Scan for additional .ini files in: /etc/php5/cli/conf.d Additional .ini files parsed: /etc/php5/cli/conf.d/10-pdo.ini, /etc/php5/cli/conf.d/20-mysql.ini, /etc/php5/cli/conf.d/20-mysqli.ini, /etc/php5/cli/conf.d/20-pdo_mysql.ini Направих редакция на /etc/php5/cli/php.ini. Сега е: [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = "Europe/Sofia" Рестартирах апачето: /etc/init.d/apache2 restart Часът все още е +10 ч. Проверих и Additional .ini files parsed да не би някъде да се презаписва, но няма. Някакви идеи? Ползвам дебиан 7.6 Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 14:08 Конфигурационният файл php.ini в папката /etc/php5/cli (както и всички други файлове в тази папка) се отнася за изпълнение на php в конзолата (cli = command line interface). За php-то, изпълнявано от apache, е нужно да редактираш конфигурацията в папката /etc/php5/apache2.
Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 15:21 И там го бях задал също.
date.timezone = "Europe/Sofia" Зоната на самия комп. обаче беше HST, сега я промених, но все пак часовникът е грешен с +1 час. root@debian:/# date Tue Aug 26 04:19:35 EEST 2014 Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 15:27 Tue Aug 26 04:19:35 EEST 2014Спрямо времето на писане на поста ти това не е отместване от +1 час, а от +13 часа :) Може да го свериш с date Цитат date -s "25 AUG 2014 15:27:00"а най-добре инсталирай и пусни ntp демона да ти сверява часа Цитат apt-get install ntp Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 15:32 Настроих го ръчно, имам инсталиран ntp, но часовникът си изостава пак.
Имам следните сървъри добавени в ntp.conf: server 0.bg.pool.ntp.org server 1.bg.pool.ntp.org server 2.bg.pool.ntp.org server 3.bg.pool.ntp.org Как да го сверя чрез ntp ? Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 15:40 Увери се, че нямаш някакви ограничения за изходящи заявки към порт 123 през UDP (това са портът и протоколът, с които работи NTP)! Може да пробваш какво се случва при ръчно обръщение към някой от тези сървъри
Цитат ntpdate 0.bg.pool.ntp.orgЗа целта ще трябва да инсталираш пакета ntpdate, ако го нямаш инсталиран. Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 15:42 root@debian:/etc# ntpdate 0.bg.pool.ntp.org
25 Aug 15:41:38 ntpdate[12020]: the NTP socket is in use, exiting root@debian:/etc# ntpdate pool.ntp.org 25 Aug 15:41:47 ntpdate[12091]: the NTP socket is in use, exiting Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 15:48 Така де - спри ntp демона преди това :)
Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 15:52 root@debian:/etc# ntpdate 0.bg.pool.ntp.org
25 Aug 15:50:41 ntpdate[16005]: no server suitable for synchronization found Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 15:59 Ако командата
Цитат host 0.bg.pool.ntp.orgти връща IP адреси, тогава търси проблема в позволението на порта, за който ти споменах одеве. Първо прегледай iptables-а на самата машина, преди да тръгнеш да търсиш забрани по суичове и рутери по пътя извън машината! Ако не ти се връщат IP адреси, тогава търси проблема в DNS сървърите, които ползваш! Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 16:04 root@debian:/etc/php5/cli# host 0.bg.pool.ntp.org
0.bg.pool.ntp.org has address 193.19.172.5 0.bg.pool.ntp.org has address 79.98.105.18 0.bg.pool.ntp.org has address 84.54.128.8 0.bg.pool.ntp.org has address 87.120.164.97 root@debian:/etc/php5/cli# iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Значи забраната е извън машината? А какво да правя с web server-a? В момента забелязах, че часовникът на уеб сървъра се е променил, но пак е грешен (показва 13ч. вместо 16ч.). Както казах и на двете места (etc/php5/cli/php.ini и etc/php5/apache2/php.ini) е сетната "Europe/Sofia" таймзона. Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 16:13 Значи забраната е извън машината?Ако това е проблемът - да. В момента забелязах, че часовникът на уеб сървъра се е променилВ резултат на какво се е променил? Пробвай да го свериш ръчно с date, след което може да засилиш стойността и към хардуерният часовник с команда Цитат hwclock -wслед което проследи ще се промени ли пак часовникът и евентуално какъв процес ще е съвпаднал с неговата промяна, който да бъде обвинен за това. Преди да промениш хардуерният часовник виж текущата му стойност с команда Цитат hwclock -r Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 16:17 root@debian:/etc/php5/cli# date
Mon Aug 25 16:15:37 EEST 2014 root@debian:/etc/php5/cli# hwclock -r Mon 25 Aug 2014 04:15:41 PM EEST -0.297274 seconds Двата часовника са сверени, след като ръчно сверих първия и му прехвърлих стойността на другия. Тук няма промяна от тогава. Аз говорих обаче за apache сървъра, там си е изостанал с 3 часа, а уж е зададена "Europe/Sofia" таймзона на двете места (etc/php5/cli/php.ini и etc/php5/apache2/php.ini). :( Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 16:26 Може би е излишно, но все пак да попитам... рестартира ли apache-то след редакцията на php.ini файла? И как по-точно проверяваш текущия час през apache-то? Ако сложиш следния код в един php файл
Код и го заредиш през apache в браузъра какво изписва? Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 16:39 През панел го проверявам, чийто създател каза, че времето в панела зависи от php настройките на сървъра.
Опитах се да сложа phpinfo(), както и твоя код, но "The requested URL /php.php was not found on this server." Каквото и да кача друго в var/www не излиза в браузъра, освен въпросният панел. Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 25, 2014, 16:47 Увери се отново, че /var/www е папката, която е зададена за този VirtualHost в apache, след което провери за пренасочващи правила в настройките на VirtualHost-а или в .htaccess файл в тази папка.
Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 25, 2014, 17:10 http://212.233.253.130/php.php
http://212.233.253.130/phpinfo.php Mисля, че проблемът ще да е в панела. ::) Титла: Re: настройка на date.timezone Публикувано от: remotexx в Aug 26, 2014, 02:15 3 часа разлика... да не би нещо да е настроено да работи по Гринуич?
Най-вероятно hwclock Или ако гледаш некой журнал само той да печата в UTC... Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 26, 2014, 13:48 3 часа разлика... да не би нещо да е настроено да работи по Гринуич? Панелът е бил настроен да работи по GMT. Използвам vsftpd за FTP, при него пък като кача файл излизат, че са качени с +3 часа. Тоест там часовникът е напред с 3 часа. Часовникът на самия компютър е настроен (hwclock също). Някакви идеи за там? В vsftpd.conf имам следната настройка: //When enabled, directory listings reveal the local time for the computer instead of GMT. use_localtime=YES Титла: Re: настройка на date.timezone Публикувано от: neter в Aug 26, 2014, 15:11 Ако FTP потребителите са в chroot среда (т.е., ако имаш зададено chroot_local_user=yes в конфигурацията на vsftpd), тогава пробвай да създадеш папка с име "etc" (без кавичките) в домашната папка на някой потребител, копирай в нея файла /etc/localtime, задай на копирания файл собственикът да е root и да може само да се чете от други потребители, след което пробвай променило ли се е нещо около часовете на файловете, които този FTP потребител качва.
Може да пробваш и да сложиш такъв код в /etc/init.d/vsftpd (или там, както се казва init файла за vsftpd при теб) точно под реда ". /lib/lsb/init-functions" Код след което трябва да рестартираш vsftpd. Титла: Re: настройка на date.timezone Публикувано от: remotexx в Aug 26, 2014, 15:19 Нормално.
София е 3 часа напред от Гринуич през лятото и 2 часа напред зимата. Ако искаш до ти показва еднакви времена може: 1. Да забраниш там в този файл да се ползва локалното време. 2. Да си настроиш навсякъде до е локално. Аз лично бих предпочел вариант 2. Защото някой дни ще ти е +2 други +3 и дори и да го лъжеш каго го буташ 2-3 часа напред уж че е локално време ...все някой ден нещо или някой ще го свери онлайн с атомен часовник и... пак ще го оака. Титла: Re: настройка на date.timezone Публикувано от: globaluty в Aug 27, 2014, 14:18 Ако FTP потребителите са в chroot среда (т.е., ако имаш зададено chroot_local_user=yes в конфигурацията на vsftpd), тогава пробвай да създадеш папка с име "etc" (без кавичките) в домашната папка на някой потребител, копирай в нея файла /etc/localtime, задай на копирания файл собственикът да е root и да може само да се чете от други потребители, след което пробвай променило ли се е нещо около часовете на файловете, които този FTP потребител качва. Добавих etc папка с localtime файл в основната директория на потребител, като зададах на папката и файла 644 права. Пробвах след това да кача нов файл с въпросния потребител, но нямаше разлика във времето. Реших да пробвам и второто нещо, което предложи, но няма "/lib/lsb/init-functions" в /etc/init.d/vsftpd. При премахването на use_localtime, часът вече е наред. А имате ли някаква идея как да показва и в коя секунда е качен дадения файл, тъй като в момента ги закръгля до минутата? Също така и ако може да изписва правата с цифри, а не drwx... Благодаря ви. |