<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Looki's Blog &#187; LNMP</title>
	<atom:link href="http://www.liaojun.com/tag/lnmp/feed" rel="self" type="application/rss+xml" />
	<link>http://www.liaojun.com</link>
	<description>Good Good Study,Day Day Up... </description>
	<lastBuildDate>Thu, 29 Jul 2010 02:25:43 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>将通达OA2009转移至LNMP平台</title>
		<link>http://www.liaojun.com/363.html</link>
		<comments>http://www.liaojun.com/363.html#comments</comments>
		<pubDate>Thu, 10 Sep 2009 10:32:51 +0000</pubDate>
		<dc:creator>Looki</dc:creator>
				<category><![CDATA[学习笔记]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[LNMP]]></category>
		<category><![CDATA[通达OA]]></category>

		<guid isPermaLink="false">http://looki.cn/?p=363</guid>
		<description><![CDATA[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目录下运行之即可
&#60;?
 include_once(&#8220;inc/conn.php&#8221;);
 $connection = OpenConnection();
 $FILE_CONTENT=&#8221;";
 $TABLE_ARRAY = mysql_list_tables($MYSQL_DB);
  while($TABLE = mysql_fetch_row($TABLE_ARRAY))
    {
       $TABLE_NAME = $TABLE[0];
       $TABLE_NAME1 = strtoupper($TABLE_NAME);
       $query=&#8221;ALTER TABLE $TABLE_NAME RENAME $TABLE_NAME1;&#8221;;
       echo $query.&#8221;&#60;br&#62;&#8221;;
       exequery($connection,$query);
     }
 echo &#8220;OK!&#8221;;
?&#62;
4、修改inc/oa_config.php，有两处
//&#8211; 附件路径配置(Windows) &#8211;
//$ATTACH_PATH=$ROOT_PATH.&#8221;attachment/&#8221;;
//$ATTACH_PATH2=realpath($ROOT_PATH.&#8221;../&#8221;).&#8221;/attach/&#8221;;
 
//&#8211; 附件路径配置(Unix/Linux) &#8211;
//$ATTACH_PATH=&#8221;/myoa/attachment/&#8221;;
//$ATTACH_PATH2=&#8221;/myoa/attach/&#8221;;
$ATTACH_PATH=&#8221;/home/wwwroot/attachment/&#8221;;
$ATTACH_PATH2=&#8221;/home/wwwroot/attach/&#8221;;
//连接OfficeTask服务的地址和端口
$MYOA_TASK_ADDR = &#8220;192.168.1.8&#8243;; //这里填运行office_task的那台机子的IP
$MYOA_TASK_PORT = 2397;
另外还得在win主机上修改office_task的“定时任务关联地址”及“mysql主机”为debian的IP，并确保office_task能够正常连接到mysql数据库。至此好像是已经完成了，目前运行下来所有功能均正常使用，就天气预报没法显示，一直提示：“error:解析天气数据失败”，不知道是哪里的问题了。

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