部署office online server 2016后内网正常,外网无法使用


#1

参考 为 Seafile 部署 Office Online Server 成功部署 office online server 2016

但是部署后内网可以正常编辑和预览,外网无法不行,请高手帮忙看看什么问题

内网能访问office onlie 的地址
https://office.xx.com/hosting/discovery

nginx 配置

seahub_settings.py配置

office online server配置


#2

我和你一样的问题 :

以下我的想法,看能帮我参考不
按楼主教程 ,在配置nginx的反向代理时,在公网是不能打开office文档的。
1、因为seafile打开office文档时,请求的的URL是OOS的外部地址。除非OOS的外部地址或域名是真实公网可访问的。
在此处配置反向代理OOS只能对内部服务器(内网/局域网)起作用。
2、因OOS端口不能使用非80端口。而大部分家用或商用80端口不可用。如果在路由器或防火墙上把请求OOS的端口改成8080再转换成80,虽然可以正常访问OOS的测试界面。但还是打不开文档。
看起来1条和2条有冲突。但现实我实验过真是这样
我觉得是seafile的问题
在配置seahub_settings.py 中
OFFICE_WEB_APP_BASE_URL = ‘htt p : //office.domain.。com/hosting/discovery’
如果在公网地址如:
OFFICE_WEB_APP_BASE_URL = ‘5 9.51.x.x:8080/hosting/discovery’
这里就算加上端口号也没有用。它请求的URL还是(用chrome开发者模式可查看到)
http://59.51.x.x/we/wordeditorframe.aspx?WOPIS
从这条url可以看出并没有加上端口号,所以就打不开文档

我想要以下方法才能解决:
1,用vpn接入,但这不能为其他人提供服务。
2,申请80端口可用,但这个费用和手续太多。基本无望。
3,在装有OOS的服务器上,做IIS的反向代理。把所有OOS请求URL重写到指定端口的URL上如:
htt p: //59.5 1.42.54/x/。。。。。 重写成 http: //59.51.42.54:8080/x/
htt p: //59.5 1.42.54/mv/…重写成 http: //59.51.42.54:8080/mv/
这里太多二级路径了,不例全了。参阅OOS的 hosting/discovery
以上是我遇到坑的想法和解决预想。


#3

感谢帮助,这个思路很好,空了我尝试一下


#4

你好,这个你解决了没有


#5

我也遇到这个问题,现在不知道怎么解决