Liunx环境下CMS接口无法正常格式化时间的问题
一.说明
本文档为JTopCMS在Liunx环境下标签接口无法正常格式化时间的问题。
二.细节
在某些Linux Unix环境下部署CMS,可能会由于默认输出时间格式为非标准格式,导致时间信息无法正常由标签格式化从而输出空白,如系统默认时间格式为 Aug 20, 2023 1:02:07 PM 。
三.解决方案
1) 首先使用locale命令看看当前系统所使用的字符集,确保不是英文en
[root@dev ~]# locale
LANG=en_US.UTF-8 (请改为中文zh_CN)
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
按如下方法修改/etc/locale.conf配置文件并重启系统测试
#LANG="en_US.UTF-8"
LANG="zh_CN.UTF-8"
2) 修改CMS配置文件web.xml,若无以下参数,请为freemarker增加时间格式和locale参数
<!--设置默认地区,主要影响数字、日期输出格式--> <init-param> <param-name>locale</param-name> <param-value>zh_CN</param-value> </init-param> <init-param> <param-name>datetime_format</param-name> <param-value>yyyy-MM-dd HH:mm:ss</param-value> </init-param> <init-param> <param-name>date_format</param-name> <param-value>yyyy-MM-dd</param-value> </init-param> <init-param> <param-name>time_format</param-name> <param-value>HH:mm:ss</param-value> </init-param>
======================= 完结 =======================