关于Nextcloud连接Onlyoffice成功后提示“ONLYOFFICE服务器无法连接,请联系管理员。“错误的处理方法

好不容易才把onlyoffice连接成功,你竟然还给我来这个错误,实在是不应该呀,都最后一公里了,可不能放弃,必须得把它给解决。

现在不妨从开始说起:

在Docker容器内部,宿主机相当于一个网关,宿主机根据不同的端口给每个容器分配一个独立的IP地址。这时所有Docker上所有容器的IP都是基于DNAT和SNAT技术自动实现对内网的接入,本质上都是用宿主机的内网IP地址+宿主机端口,只是映射的端口号不同而以。此时宿主机与外界通信的接口是路由器,其使用的IP是内网IP,还不能直接上网,必须经过路由器(路由器的一端连内网,一端连公网)的端口映射,再次把宿主机的端口映射到路由器的独立端口上(具体根据路由器设置),使用路由器的端口与公网连接,其本质也是利用路由器的公网IP+路由器的端口号。

所以容器在接入公网之前是经过了两层映射(套娃的既视感),两次端口转换:容器----宿主机----路由器。

宿主机内部各级映射,每级都有一个网关

现在安装Nextcloud和Onlyoffice容器,它们是两个不同的服务器,要连接成功,必须是两边都是互通的,才可以互访。前几天都是把NC和OO都部署在NAS服务器上,妄想基于Docker容器来实现两服务器的互访,虽然内网是没有问题的,但是外网却不一直连接不上,为啥呢?

这是因为我犯了个低级错误:因为对于DNS服务器来说来说,要将域名转换为IP地址,这个IP地址必须是公网地址,前面说到如果以回环的方式实现互访在内网是没有问题的,但是外网就显然不可能了。

既然不能直连,那我们可以用其它方法来实现,方案有三种:

方案一:能不能再增加一台以上设备来实现“下一跳”,这样就可以“欺骗”路由器了。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
安装 Nextcloud: 1. 首先安装 Apache Web 服务器和 PHP: ``` sudo dnf install httpd php php-mysqlnd php-json php-gd php-mbstring php-curl php-zip php-intl ``` 2. 安装 MariaDB 数据库: ``` sudo dnf install mariadb mariadb-server sudo systemctl start mariadb sudo systemctl enable mariadb sudo mysql_secure_installation ``` 在运行 `mysql_secure_installation` 命令时,需要设置 MariaDB 的 root 用户密码。 3. 安装 Nextcloud: ``` sudo dnf install https://download.nextcloud.com/server/releases/nextcloud-21.0.2.tar.bz2 sudo tar -jxvf nextcloud-21.0.2.tar.bz2 -C /var/www/html/ sudo chown -R apache:apache /var/www/html/nextcloud/ ``` 4. 配置 Apache Web 服务器: ``` sudo nano /etc/httpd/conf.d/nextcloud.conf ``` 在文件中添加以下内容: ``` Alias /nextcloud "/var/www/html/nextcloud/" <Directory /var/www/html/nextcloud/> Options +FollowSymlinks AllowOverride All Require all granted <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www/html/nextcloud SetEnv HTTP_HOME /var/www/html/nextcloud </Directory> ``` 保存并退出文件。然后重启 Apache Web 服务器: ``` sudo systemctl restart httpd ``` 5. 下载并安装 Nextcloud 应用程序中的 OnlyOffice 应用程序。 在 Nextcloud 应用商店中搜索 OnlyOffice 并安装。 6. 配置 OnlyOffice 应用程序。 在 Nextcloud 中,转到“设置”-“OnlyOffice”页面。输入 OnlyOffice 服务器的 IP 地址和端口号。如果您使用 HTTPS,勾选“使用 HTTPS 连接”。然后单击“保存”。 然后,在 OnlyOffice 服务器上安装和配置 OnlyOffice Docs。 安装 OnlyOffice Docs: ``` sudo yum install https://download.onlyoffice.com/repo/centos/main/noarch/onlyoffice-repo.noarch.rpm sudo yum install onlyoffice-documentserver ``` 然后编辑 OnlyOffice Docs 配置文件: ``` sudo nano /etc/onlyoffice/documentserver/default.json ``` 将 `server.bind` 值更改为 `0.0.0.0`,以允许任何 IP 地址连接: ``` "server": { "host": "0.0.0.0", "port": 80, "secret": "mysecret", "protocol": "http" }, ``` 保存并退出文件。然后重启 OnlyOffice Docs 服务: ``` sudo systemctl restart onlyoffice-documentserver ``` 现在,您的 NextcloudOnlyOffice Docs 都已经安装和配置好了。您可以在 Nextcloud 中创建和编辑文档、表格和演示文稿了。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

postdsa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值