将通达OA2009转移至LNMP平台

LNMP=Linux+Nginx+Mysql+PHP(本文是部署在Debian5.0.2平台上) Nginx 的中文维基:http://wiki.nginx.org/NginxChs 通达OA:http://www.tongda2000.com/download/index.php 具体如何搭建LNMP平台请参考此文:Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第5版) 下面主要记录如何将通达OA2009转移至LNMP平台,以及在Linux下的一些注意事项 1、去通达官网下载最新的OA2009安装包,找一台win主机一路next安装好后,停掉除office_task外的其它服务,在把webroot目录打包之前,记得先把\general\mytable目录下的所有以中文命名的模块全部改为英文,这会解决登录OA后桌面不显示的问题,在Apache下则没有这个问题。 2、将打包的webroot在Debian中解压,我是直接放到/home/wwwroot目录下了,注意设置好update、inc、logs和attachment目录的可写权限。 3、在win下将OA数据库整个导出,再在debian中导入,这里需要将所有的表名由小写转为大写,将下面这段代码存为table.php并放到wwwroot目录下运行之即可 include_once(“inc/conn.php”); $connection = OpenConnection(); $FILE_CONTENT=”"; $TABLE_ARRAY = mysql_list_tables($MYSQL_DB); while($TABLE = mysql_fetch_row($TABLE_ARRAY)) { $TABLE_NAME = $TABLE[0]; $TABLE_NAME1 = strtoupper($TABLE_NAME); $query=”ALTER TABLE $TABLE_NAME RENAME $TABLE_NAME1;”; echo $query.”
”; exequery($connection,$query); } echo “OK!”; ?> 4、修改inc/oa_config.php,有两处 //– 附件路径配置(Windows) – //$ATTACH_PATH=$ROOT_PATH.”attachment/”; //$ATTACH_PATH2=realpath($ROOT_PATH.”../”).”/attach/”; //– 附件路径配置(Unix/Linux) – //$ATTACH_PATH=”/myoa/attachment/”; //$ATTACH_PATH2=”/myoa/attach/”; $ATTACH_PATH=”/home/wwwroot/attachment/”; $ATTACH_PATH2=”/home/wwwroot/attach/”; //连接OfficeTask服务的地址和端口 $MYOA_TASK_ADDR = “192.168.1.8″; //这里填运行office_task的那台机子的IP $MYOA_TASK_PORT = 2397; 另外还得在win主机上修改office_task的“定时任务关联地址”及“mysql主机”为debian的IP,并确保office_task能够正常连接到mysql数据库。至此好像是已经完成了,目前运行下来所有功能均正常使用,就天气预报没法显示,一直提示:“error:解析天气数据失败”,不知道是哪里的问题了。 5、一些注意事项 php.ini中要设置include_path=”.:/home/wwwroot”,要不然登录后会报Failed opening ‘inc/auth.php’ for inclusion (include_path…..之类的错误 编译PHP时,在make之前特别注意,应该编辑Makefile文件 在 EXTRA_LIBS = ….. -lcrypt 这一行加上 -liconv 否则就会发生undefined reference to `libiconv_open’等一系列错误。 修改/usr/local/nginx/conf/nginx.conf 文件,在设定的虚拟主机字段内加上一句:charset gb2312;否则OA有个别页面会乱码。 ============2009.9.27更新========= 天气及资讯问题圆满得到解决,原来是gbk编码的问题,看来通达是得考虑全面转为utf-8编码了,毕竟兼容性更好啊。 转换linux系统默认编码:vi /etc/sysconfig/i18n 将内容更改为: LANG=”zh_CN.GB18030″ LANGUAGE=”zh_CN.GB18030:zh_CN.GB2312:zh_CN” SUPPORTED=”zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en” SYSFONT=”lat0-sun16″ 编辑php.ini:vi /usr/local/php/etc/php.ini,将default_charset 改为default_charset = “gb2312″,重启机器后,再登陆OA,右上角久违的天气预报终于正常显示了,打开今日资讯也不再显示一块白板了。 我的php编译参数 ./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/etc –with-mysql –with-mysqli –with-iconv-dir=/usr/local –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml –disable-rpath –enable-discard-path –enable-safe-mode –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –with-curlwrappers –enable-mbregex –enable-fastcgi –enable-fpm –enable-force-cgi-redirect –enable-mbstring –with-mcrypt –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-xmlrpc –enable-zip –enable-ftp –enable-exif –without-pear make ZEND_EXTRA_LIBS=’-liconv’ make install http://looki.cn/363.html

你可能感兴趣的:(将通达OA2009转移至LNMP平台)