我将TYPO3 4.7.7(MySQL)安装从GMT+1的服务器移动到GMT+2的服务器。
现在,所有显示日期和时间的页面都有以下区别:
旧服务器:
<p>published: 03 Dec 2012 – 12:00</p>
新服务器:
<p>published: 03 Dec 2012 – 13:00</p>
我尝试通过$TYPO3_CONF_VARS['SYS']['phpTimeZone']
和$TYPO3_CONF_VARS['SYS']['serverTimeZone']
更改时区偏移量,但即使在清除所有缓存后也没有任何反应。
请注意,显然我不想更改系统的(linux)时间或时区设置。
接下来我应该看哪里?
也许是这样的:
拼写错误:
strftime.GMT = 2
来自: http://www.typo3.net/forum/beitraege/extensions_schreiben/106541/
设置 TYPO3 的 PHP 时区。
$GLOBALS['TYPO3_CONF_VARS']['SYS']['phpTimeZone'] = '欧洲/柏林';
设置 TYPO3 的服务器时区。
$GLOBALS['TYPO3_CONF_VARS']['SYS']['serverTimeZone'] = '1';
修改 TYPO3 tt_content 和 TYPO3 扩展名中字段 tstamp 的输出:
if (!empty($GLOBALS['TYPO3_CONF_VARS']['SYS']['serverTimeZone'])) {
$row['tstamp'] += ($GLOBALS['TYPO3_CONF_VARS']['SYS']['serverTimeZone'] * 3600);
}
这位于文件夹/typo3/sysext/cms/tslib/content 中:
class.tslib_content_content.php在行之前$this->cObj->lastChanged($row['tstamp']);
class.tslib_content_records.php在行之前$this->cObj->lastChanged($row['tstamp']);