背景是这个样子的,公司阿里云服务器安装了通达OA2015,还有一个论坛也想放在阿里云上面跑.
在最开始使用通达OA2013的时候,我们是用OA自带的WEB服务,自建了另外一个数据库.
当升级到2015之后,我发现原来由apache提供的WEB服务变成了nginx
这样在绑定域名方便就有很多问题要处理.
在研究了很多资料和在官方客服的帮助下,我最终还是搞定了这个问题.
下面就来详细的介绍下这种方法:
OA默认的目录是这个 D:\MYOA\webroot
然后DZ论坛的目录是 D:\bbs
我们想把 D:\MYOA\webroot 绑定域名oa.xxx.com
D:\bbs 绑定域名 bbs.xxx.com
1,找到这个文件 在myoa\nginx\conf\nginx.conf
插入以下代码
server {
listen 80;
server_name bbs.xxx.com;
root D:/bbs;
index index.php index.html index.htm;
include common.conf;
include D:/bbs/.htaccess; (这一行代码后面再做解释,先不要插入,否则会报错)
if (-d $request_filename){
rewrite ^/(.*)([^/])$ $scheme://$http_host/$1$2/ permanent;
}
#charset gbk;
#access_log logs/host.access.log main;
#error_page 404 /404.html;
location ~* ^/(attachment|static|images|theme|templates|wav)/.*\.(php|.php3|.php5|jsp|asp)$ {
deny all;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:8002;
fastcgi_index index.php;
include fastcgi.conf;
}
}
还要修改以下代码:
server {
#Nginx Port
listen 80;
server_name oa.xxx.com; 这里原本是localhost 我们把它改成域名
root D:/MYOA/webroot/;
index index.php index.html index.htm;
2,在D:\MYOA\bin\service.ini 中添加
[OfficeFPM2]
Listen = 8002
ProcessNumber = 2
FastCGICmd = D:\MYOA\bin\php-cgi.exe -c D:\MYOA\bin\php_bbs.ini
3,在myoa\bin下拷贝一份该文件php.ini,并重命名为php_bbs.ini
并修改
路径如下:
error_log = D:\MYOA\logs\php_error_bbs.log
include_path = “.;D:\bbs”
doc_root = D:\bbs
重启office_web服务生效
注意这个: include D:/bbs/.htaccess;
这个是给DZ伪静态用的, 我们在这里引用那个文件
很重要的一点就是,我们要自己会看 D:\MYOA\nginx\logs\error.log这个文件
我遇到很多次office_web这个服务启动了又停止 从这个日志文件中我们就可以发现问题
如果再绑定绑定第三个域名,比如www.xxx.com
那就照着上面再来一遍.
再次插入以下代码
server {
listen 80;
server_name www.xxx.com;
root D:/www;
index index.php index.html index.htm;
include common.conf;
if (-d $request_filename){
rewrite ^/(.*)([^/])$ $scheme://$http_host/$1$2/ permanent;
}
#charset gbk;
#access_log logs/host.access.log main;
#error_page 404 /404.html;
location ~* ^/(attachment|static|images|theme|templates|wav)/.*\.(php|.php3|.php5|jsp|asp)$ {
deny all;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:8003;
fastcgi_index index.php;
include fastcgi.conf;
}
}
2,在D:\MYOA\bin\service.ini 中添加
[OfficeFPM3]
Listen = 8003
ProcessNumber = 3
FastCGICmd = D:\MYOA\bin\php-cgi.exe -c D:\MYOA\bin\php_www.ini
3,在myoa\bin下拷贝一份该文件php.ini,并重命名为php_www.ini
并修改
路径如下:
error_log = D:\MYOA\logs\php_error_bbs.log
include_path = “.;D:\www”
doc_root = D:\www
重启office_web服务生效
最后补充一点,我在本地测试的时候出现了打不开网页的情况
重置下winsock就好了啊~!(dos窗口输入netsh winsock reset 回车)
关于在Win2008下打开系统防火墙的时候OA无法访问的解决办法如下:
只需要添加D:\MYOA\nginx目录下的OfficeNginx.exe允许就可以了.
通达看着不错,楼主用的怎么样?