成功让OCSNG支持简体中文并导入GLPI中文也正常显示

ocsinventory-ng以及glpi是免费的实现IT管理不错的选择,只是由于ocsng一直没有直接支持中文,故老是看着乱码不爽,经过修改agent文件等步骤后,终于消除了中文乱码,看着熟悉的简体中文,真不错,特分享下步骤:

OCSNG中文支持说明

1、gb2312.enc 保存至 ..\xampp\perl\lib\XML\Parser\Encodings 文件夹内;

2、更改如下文件及其内容:

(1)、 ..\xampp\htdocs\ocsreports\languages 文件夹内的文件 english.txt 中iso-8859-9 修改为 utf-8;或者直接用CHS Server 内的同名文件替换;当然也可以找面中国国旗来专门弄份chinese ocs web console!

(2)、 ..\xampp\htdocs\ocsreports 文件夹内的文件 machine.php 中显示软件列表的代码修改 (删除 htmlentities ),已修改文件附在 CHS Server 文件夹内,修改后保存即可或直接用已修改的 machine.php 覆盖原文件;

(3)、 ..\xampp\OCS Inventory NG 文件夹内的DTD 文件夹用CHS Server 内的文件夹 DTD 覆盖; (经实际测试,此步骤可省略掉,不影响系统正常支持中文)

(4)、最后用HEXEdit 把文件夹 .\Program Files\OCS Inventory Agent 内的文件 OCSInventory.exe 中 ISO-8859-1 修改为 gb2312 ;

完成这些步骤之后,在OCSNG管理后台查看所有中文信息都正常显示了,不再是乱码!!附上截图:




如图所示!!

OCSNG管理后台全部正确显示中文,且在将数据同步导入GLPI数据库后,在GLPI数据库内便是正确的中文,故GLPI中亦完全正确显示!!后又尝试将ocsng的数据库整理改为utf8,但是始终无法在ocs数据库内直接存储中文,搞不清楚怎么回事,试了gb2312也不行!等待官方发布新版本吧!

终于可以安心地用这套 Open Computer and Software Inventory 了!

文中提及的软件网上可下载,若有需要的可在此回复邮箱地址!

更新,OCSNG WebConsole中操作系统的注册用户名、注册组织、计算机描述以及个别CPU型号中文显示问题:

关于网友webshare提到的像操作系统的注册用户名、注册组织、计算机描述以及个别CPU型号中的中文显示问题,调整文件 preferences.php 中的utf-8为1后便显示正常了,但是软件等其他本来正常的又乱码了!!看来还是有希望能修复这些项目的乱码问题!!


后来经过察看源文件所带的字符转换功能项,只要对 machine.php 文件再做如下修改便可以正常显示“操作系统的注册用户名、注册组织、计算机描述以及个别CPU型号”中的中文字符了!
具体修改如下:

echo "<table width='90%' align='center' border='0' bgcolor='#C7D9F5'>";
echo "<tr>".$tdhd.$l->g(274).$tdhf.$tdhdpb.textDecode($item->OSNAME).$tdhfpb."</tr>";
echo "<tr>".$tdhd.$l->g(275).$tdhf.$tdhdpb.textDecode($item->OSVERSION).$tdhfpb."</tr>";

echo "<tr>".$tdhd.$l->g(286).$tdhf.$tdhdpb.utf8_decode($item->OSCOMMENTS).$tdhfpb."</tr>"; //更改 textDecode 为 uft8_decode

echo "<tr>".$tdhd.$l->g(51).$tdhf.$tdhdpb.utf8_decode($item->WINCOMPANY).$tdhfpb."</tr>";//更改 textDecode 为 uft8_decode

echo "<tr>".$tdhd.$l->g(348).$tdhf.$tdhdpb.utf8_decode($item->WINOWNER).$tdhfpb."</tr>";//更改 textDecode 为 uft8_decode

echo "<tr>".$tdhd.$l->g(111).$tdhf.$tdhdpb.textDecode($item->WINPRODID).$tdhfpb."</tr>";
echo "<tr>".$tdhd.$l->g(553).$tdhf.$tdhdpb.textDecode($item->WINPRODKEY).$tdhfpb."</tr>";
echo "<tr>".$tdhd.$l->g(357).$tdhf.$tdhdpb.textDecode($item->USERAGENT).$tdhfpb."</tr>";
echo "</table></td></tr></table>";
个别CPU型号:
    echo "$td3".utf8_decode($item->PROCESSORT)."</td>
//更改 textDecode 为 uft8_decode
          $td3".textDecode($item->PROCESSORS)."</td>
          $td3".textDecode($item->PROCESSORN)."</td>";

OCSNG Agent 对某些CPU还是不支持的,根本认不出来。

修改后所有这些本来显示乱码的项目就正常了!但是在GLPI数据库中仍旧是乱码,有时间了再看看是不是可以彻底的解决掉!

应网友要求,我把这些文件传到网盘上去了,这是下载地址:

http://www.rayfile.com/zh-cn/files/a6591a23-b0f0-11df-87c5-0015c55db73d/

大家可以直接下载!


[本日志由 Richard 于 2010-08-26 05:03 PM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 44 | 引用: 0 | 查看次数: -
回复回复aizaiyangguang[2011-09-03 04:44 PM | del]
博主,你好,能发我一份汉化包吧 英语看的我头疼,我的邮箱地址是395005756@qq.com,小弟感激不尽,谢谢!
回复来自 Richard 的评论 Richard 于 2011-09-05 09:44 PM 回复
你好:文件已发,请查收!
OCSNG现在应该已经出了蛮多新的版本了,一直没有时间去测试一下这些更新、最新的版本,也不知道现在官方发布的版本是否已实现UTF-8编码支持......
回复回复viong[2011-03-08 04:38 PM | del]
你好!麻烦发个您的联系方式到我的邮箱(g.cn510@gmail.com),想咨询一下关于OCS使用经验,谢谢
回复回复eachare[2010-09-04 11:46 PM | del]
谢谢博主哈!不过我用官方1.3.2版按你所述整来还是不行,不知道你是否是用1.0.2版?
回复来自 Richard 的评论 Richard 于 2010-09-05 09:54 AM 回复
我用的ocsng的web console版本就是1.0.2的......你不要按我所述的去改,你直接用我上传在网盘上的文件替换掉试试吧......
回复回复eachare[2010-09-03 11:35 PM | del]
hi!博主能否将你xampp目录下所有文件打包传一个给我啊,谢谢!我测试来中文还是???
查看客户端xml已是UTF-8且中文正常。但在PHPMYADMIN中看MYSQL中的中文数据已是???,在OCS管理WEB就更不用说了
bourner@qq.com
万分感谢!
我用的是OCSNG-Windows-Server-Setup-1.3.2
回复来自 Richard 的评论 Richard 于 2010-09-04 05:56 PM 回复
那些没用的,你就按照我的步骤改肯定行的,不行你就直接替换客户端的那个agent文件。
回复回复sheva[2010-08-25 09:03 PM | del]
不知道博主可以把文章中提到的CHS server拿来大家下载好不
回复来自 Richard 的评论 Richard 于 2010-08-26 11:13 AM 回复
可以,我会把这些文件上传到免费网盘,然后把地址贴这里,我本来想直接上传在博文里的,可这破空间居然限制了N多文件格式。
回复回复help[2010-08-02 07:10 PM | del]
在linux下安装完OCS1.3.1,web console上的中文显示都是乱码。请问怎么修改?OCS NG Inventory还是乱码。

CHS Server在哪啊,我怎么找不到啊?麻烦给我一份汉化包吧,谢谢
zhubenma@hotmail.com
回复来自 Richard 的评论 Richard 于 2010-08-03 09:01 AM 回复
你好:文件已发,请查收!
我没在linux下弄过中文,你查看下别人的留言吧,记得有人已经弄过了,你联系下他好了!
回复回复bythomas[2010-07-06 09:19 AM | del]
有几个疑问想请教Richard
1.引用原文:..\xampp\htdocs\ocsreports 文件夹内的文件 machine.php 中显示软件列表的代码修改 (删除 htmlentities ),已修改文件附在 CHS Server 文件夹内,修改后保存即可或直接用已修改的 machine.php 覆盖原文件;
问题:CHS Server在哪啊,我怎么找不到啊?

2.引用原文:最后用HEXEdit 把文件夹 .\Program Files\OCS Inventory Agent 内的文件 OCSInventory.exe 中 ISO-8859-1 修改为 gb2312
问题:我用HEXEdit打开OCSInventory.exe,一堆乱码,找不到ISO-8859-1这个字段啊,是什么原因?可不可以给一个修改好的文件发邮箱啊

3.引用原文:echo "<table width='90%' align='center' border='0' bgcolor='#C7D9F5'>";
echo "<tr>".$tdhd.$l->g(274).$tdhf.$tdhdpb.textDecode($item->OSNAME).$tdhfpb."</tr>";
echo "<tr>".$tdhd.$l->g(275).$tdhf.$tdhdpb.textDecode($item->OSVERSION).$tdhfpb."</tr>";
问题:这些代码没看明白,是要改成这些代码还是更改这些代码啊?有没有改好的文件啊

谢谢解答!要是能给个汉化包更好
我的邮箱ustb_huangmx@139.com

回复来自 Richard 的评论 Richard 于 2010-07-06 10:18 AM 回复
您好,bythomas:
1、CHS Server 是我发出来的汉化包里的一个文件夹,其实也不是什么汉化包,整个网页控制台我没去汉化,只是修改了一下客户端而已;
2、你查找一下就能找到的哦;
3、我把我这边现有的支持中文的发给你。

回复来自 Richard 的评论 Richard 于 2010-07-06 10:29 AM 回复
文件已发,请查收!
回复回复cailifei[2010-05-07 09:33 AM | del]
www.bjprosperpm.com/1.png
www.bjprosperpm.com/2.png
我们通过不懈努力,已经解决了在linux环境下,OCS NG Inventory 和 GLPI同时支持中文的问题,见上图,图片链接。。
回复来自 Richard 的评论 Richard 于 2010-05-07 09:37 AM 回复
挺好!
希望官网早点出utf-8版的,就不用再折腾了。
回复回复Zero[2010-04-30 03:15 PM | del]
麻烦给我一份汉化包吧,谢谢

zeroliz#163.com
回复来自 Richard 的评论 Richard 于 2010-05-01 05:34 PM 回复
已发,请查收!
回复回复cailifei[2010-04-29 05:30 PM | del]
引用内容 引用内容
www.bjprosperpm.com/ss.png

如图所示,glpi现在仍处于中文乱码状态,博主有什么思路吗,一起交流一下。。
十分敬仰博主,我也打算开个blog,把做的东西发上来。。
回复来自 Richard 的评论 Richard 于 2010-04-29 07:42 PM 回复
我看了下,不知道你在ocsng的web console里头看到的是否是正常的中文哦!如果那里都还不是的话先不要考虑glpi。
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.