- 解决Win2008服务器的IIS7、IIS7.5中时间格式显示的问题
- 发布时间:2012-05-25 14:30:09 浏览数:9351 发布者:superadmin 设置字体【大 中 小】
今天在用IIS7的时候发现一个关于时间格式的问题,当我在ASP中使用now()时间函数的时候,日期是以“/”来分隔,而不是以“-”来分隔的,使得我在运行程序的时候老出错,后来经过研究终于找到解方法。
这里我使用的操作系统是Winodws Server 2008 R2 Enterprise,在ASP中使用now()时间函数出现的结果如下:
2009/3/17 8:11:51
而我想要的结果是2009-3-17 8:11:51,不知道为什么在IIS7中时间格式要以/来区分,如果有高手知道请留言,不过最终我通过修改注册表的方法解决了此问题,方法如下:
1、开始→运行→输入regedit,打开注册表编辑器,依次找到HKEY_USERS\.DEFAULT\Control Panel\International
2、在右边的窗口中找到sDate项,将其值改为-;再找到sShortDate项,将其值改为yyyy-M-d,
3、最好是重新启动服务器比较好! 重新启动IIS,开始→运行→输入iisreset(如果不行,就打开IIS管理器,停止,再启动)
===============[第2种方法]==========================
1.最近在Windows 2008部署的系统,发现页面上显示的时间格式是2008/12/6,这和我们框架中的一些功能产生了冲突,我们框架中一般使用2008-12-6这种格式。根据以往经验,在控制面板-区域和语言选项中,把时间格式设置为yyyy-M-d,但是发现没有效果,重启后还是一样。用winform程序测试发现刚才设置已经生效,但Web页面仍然没有效果。查看web.config,确认在globalization配置节中已经设置了 culture="zh-CN"。后来发现在区域和语言选项的设置面板的“管理”标签页面上有个“复制到保留账户”按钮,点开后可以设置将当前设置复制到系统账户(本地系统、本地服务、网络服务)。复制后重启服务器发现OK了。
2.估计是culture是属于某个账户的配置,直接在控制面板-区域和语言选项设置的是当前登录用户的配置,而Web应用程序使用的网络服务对应的账户,所以需要复制。