kalcaddle / kodbox

kodbox is a file manager for web. It is a newly designed product based on kodexplorer. It is also a web code editor, which allows you to develop websites directly within the web browser.You can run kodbox either online or locally,on Linux, Windows or Mac based platforms
https://kodcloud.com
2.18k stars 373 forks source link

如何使用NGINX反代 #284

Closed bin862324915 closed 2 months ago

bin862324915 commented 2 months ago

我的网站是使用NGINX反代的,其他目录都是可以正常访问的,唯独访问kodbox目录的时候无法正常使用,控制台提示如下内容 Uncaught (in promise) DOMException: Failed to register a ServiceWorker: The origin of the provided scriptURL ('https://test.test.com:62081') does not match the current origin ('https://test.test.com'). 希望能得到您的帮助,非常感谢

kalcaddle commented 2 months ago

参考 https://github.com/kalcaddle/kodbox/issues/279

解决方法总结

因为反向代理后header 没有正确配置,导致未识别到正确域名. 解决方法有2种:

  1. 代理转发设置携带上协议/端口/域名
    # nginx的反向代理中加入完整host
    proxy_set_header Host you.server.com:8089;
  1. 指定站URL: 在主程序目录新建文件config/define.php 内容如下(已创建则追加)
    // 替换自己的域名及端口,在子目录的需要加上子目录
    define('APP_HOST','https://server.com:4433/');
bin862324915 commented 2 months ago

很抱歉,根据您发的参考,我试了一下,好像并没有效果,我的设置如下

<?php
define('APP_HOST','https://cloud.eric008.us.kg/');

NGINX

        location / {
            proxy_pass   http://127.0.0.1:65081/;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            client_max_body_size 500000M;
        }

kodbox目录https://cloud.eric008.us.kg/pan/ 无法正常打开 其他应用目录https://cloud.eric008.us.kg/music/ 可以正常打开 希望可以得到您进一步的帮助

kalcaddle commented 2 months ago

需要带上子目录,完整的 URL https://cloud.eric008.us.kg/pan/

bin862324915 commented 2 months ago

非常感谢您解决了我这个问题,我想再请问一下,怎么添加多个自定义域名呢,我尝试了一下下面这个配置,网页访问起来似乎还是有问题

<?php
define('APP_HOST','https://cloud.eric008.us.kg/pan/');
define('APP_HOST','https://cloud.zzzwb.com:60082/pan/');
kalcaddle commented 2 months ago

手动指定只能一个站点

bin862324915 commented 2 months ago

是否有其他方法可以实现多个域名指向kodbox这个应用呢

kalcaddle commented 2 months ago

是否有其他方法可以实现多个域名指向kodbox这个应用呢 手动指定只能一个站点.

程序本身是支持域名自适应的,多个的话需要移除手动指定的内容. (如果有没正确获取站点域名的情况,就是上述说明的原因,header没有正确设置,需要自行配置. 也可以将kodbox升级到最新版再试)

bin862324915 commented 2 months ago

好的,感谢您的耐心解答,同时也谢谢您的付出创造这么好的项目