解决局域网访问Dify却仅显示nginx页面的题目

打印 上一主题 下一主题

主题 1044|帖子 1044|积分 3132

为什么dify在本机可以正常访问,局域网通过ip访问却只看到欢迎利用nginx的提示,如果访问服务器ip/apps则直接提示404 Not Found。这是怎么回事该怎样解决呢?文章中将一步步解决这些题目。
  前言 

之前在服务器部署了dify,也在服务器的浏览器设置了dify,发现它可以发布一个聊天呆板人,是通过http访问的。注意到这个聊天呆板人在服务器本机可以访问,但在局域网内别的设备上却不能访问,提示404 Not Found之类的东西。然后又注意到,服务器本机ip就是dify页面,本机ip/app则是dify面板。但是局域网别的设备访问服务器ip,只看到欢迎利用nginx的提示,如果访问服务器ip/apps则直接提示404 Not Found。

对于上述题目,我在百度查询了一圈都没结果,由于大多数人就是直接在部署dify的机子上访问的。当然我知道有人设置了nginx,使得局域网访问dify不会显示nginx默认页面,而是正确跳转到dify,可惜我没找到这种教程,自己暂时也不会。关于这个我在设置iis的webdav时碰到过,我修改了一下iis默认网页,访问对应地址就会显示修改过的网页,但是参加后最就可以访问文件目录,大概nginx有雷同的功能?暂不研究这个,我会用别的方法解决。
我在查询dify注意到,nginx端口是可以修改的,它的设置就在之前部署时复制的.env文件中(大概是靠近末了),默认就是80和443。
尝试修改端口


nginx端口采用80和443,利益是访问http或https时可以不用手动加端口,坏处是大概会和其他服务冲突,导致nginx不能启动等等。这里有个题目,如果我在本机访问本机ip,其实就是在访问本机ip:80,然后正确跳转到dify了,但在局域网设备上访问服务器ip:80却仍然停顿在nginx欢迎页。如果我将80改成别的页面,是否在别的设备访问服务器ip:别的端口,就正常了呢?我带着疑问试了试。

起初我是随意改的,80和443分别改成86和446,但是发现没有用,无法启动nginx。于是我想到了很多人习惯于将80和443改为8080和8443,我也这么改,然后重启nginx,居然成功了。
  1. # defalut nginx port
  2. EXPOSE_NGINX_PORT=80
  3. EXPOSE_NGINX_SSL_PORT=443
复制代码
所以nginx的端口我改成了这个:
  1. EXPOSE_NGINX_PORT=8080
  2. EXPOSE_NGINX_SSL_PORT=8443
复制代码

题目解决

然后我在局域网其他电脑上访问服务器IP:8080,果然出现了dify的logo!!注意到服务器硬盘在满载,于是我等了一会,它自动跳转到了dify的install界面,接着自动跳到了signin页面,登陆后就是apps页面,也就是服务器IP:8080/apps页面,是dify的面板,到此一切正常。

然后我试了试其他页面,需要等加载(似乎dify会为差别的访问设备预备内容),加载后所有页面和功能都正常了。我访问之前创建的聊天助手,发现直接访问是404,于是我在地址中服务器IP后加上8080端口,果然聊天助手也能局域网访问了,而且可以和在服务器上一样调用知识库,完善!

到此题目解决,总结一下,解决局域网其他设备不能访问dify的最佳办法就是修改nginx端口,理论上不是默认的都行。
思考

关于端口的说明,我之前不停好奇电脑的端口可以设置成哪些值,比如为什么8443可以而446不可以。我在百度的dpsk中问了一下,算是了解了,25535以内都可以设置为端口,此中1024以内是盘算机专用的,不建议从这内里选端口。所以可以从1024到25535范围内自选端口。


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

勿忘初心做自己

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表