WordPress 3.0與PHP 5的時區問題
自從上周日把主機移到美國後就覺得網站的時間有點怪怪的,明明已經把WordPress 3.0裡的時區設定成UTC+8(也設過Taipei),但每天約9點時觀察的點擊紀錄比搬家前的數字少很多,但另一個獨立的統計數字卻沒有明顯差異,因此猜測可能是WordPress系統裡的時區問題,今天特別針對這個問題搜尋解答。
找了半天都沒有看到WordPress 3.0有類似狀況發生,只找到一篇Php 5.3.0 & WP 2.8 (It is not safe to rely on the system's timezone)看來癥狀類似,但本網站的PHP版本是5.2.13,WordPress是3.0,和這篇文章的環境又不相同。盡管環境不同,但文章中提到的解決方案多少也來試一下好了。
PHP 5開始在PHP.ini增加了date.timezone參數,用來設定PHP環境的時區,以phpinfo檢查後確認本網站並未設定此參數。再來用下列PHP指令顯示目前的時區值:
<?php echo '目前時區=' . date('e c'); ?>
顯示出的確實是UTC時區,而不是設定好的UTC+8:
目前時區=UTC 2010-06-24T15:10:12+00:00
我試了上列文章裡的兩種修改方法:
- 修改wp-content/wp-config.php:增加下列指令,結果無法生效
date_default_timezone_set( 'Asia/Taipei' );
- 修改wp-includes/functions.php:增加下列指令在第一行,此方法有效
date_default_timezone_set( 'Asia/Taipei' );
另外,我也修改wp-content/wp-settings.php第30到32行,也能生效:
// Set default timezone in PHP 5. if ( function_exists( 'date_default_timezone_set' ) ) date_default_timezone_set( 'Asia/Taipei' ); // UTC
修改好後再顯示出來的時區就是需要的UTC+8了:
目前時區=Asia/Taipei 2010-06-24T23:17:45+08:00
先這樣修改,再觀察看看吧。另外,後台管理cPanel的時區找不到地方修改,是否有先進能指點一二?
##
您可能也會有興趣的類似文章
- WordPress減肥記:壓縮JavaScript檔的大小 (6則留言, 2010/06/08)
- 網站又搬家了;落腳ACSite.NET (18則留言, 2010/06/20)
- [WordPress] 在插頁寫PHP的外掛:EXEC-PHP,讓行動版網頁顯示訪客統計 (0則留言, 2009/11/22)
- [WordPress] 顯示網頁的資料庫查詢次數與執行秒數 (0則留言, 2008/12/20)
- 用cPanel Proxy穿透防火牆以操作網站cPanel後台 (0則留言, 2010/06/21)
- 新網站發文出現HTTP 406錯誤… (0則留言, 2010/07/06)
- Step by Step安裝WordPress 3.0與啟用 Multi-Site多站點功能 (20則留言, 2010/07/10)
- 自製WordPress-mu 2.7的繁體中文語言檔[修訂] (10則留言, 2009/02/09)
- 手動撰寫WordPress隨機文章功能 (2則留言, 2010/07/13)
- [轉貼] 架站好書,極度推薦《站長親授! WordPress 3.0 部落格架站十堂課》 (2則留言, 2010/11/09)
- 測試Exec-PHP外掛:開啟插頁於新頁籤 (0則留言, 2009/11/24)
- [WordPress] 使用Anchor在目前網頁裡瞬間移動 (0則留言, 2008/11/30)
- WordPress網站清除後門Reval.C記錄 (0則留言, 2022/10/13)
- WordPress網站遭植後門網頁 😡 (0則留言, 2022/08/12)
- 修改WordPress 2.8最新迴響的顯示格式 (0則留言, 2009/06/17)
1 個回應
[…] WordPress 3.0與PHP 5的時區問題 […]