chennqqi / godnslog

An exquisite dns&http log server for verify SSRF/XXE/RFI/RCE vulnerability
https://www.godnslog.com
Apache License 2.0
470 stars 72 forks source link

卡在初始化界面 #16

Open langyajiekou opened 3 years ago

langyajiekou commented 3 years ago

登录界面无法登入,纯内网环境搭建好后,机器不可出网,卡在初始化界面,仅看到Pro和下面的Ant Design。

chennqqi commented 3 years ago

经验证,你描述的情况没有复现。你打开F12 看下是哪个JS加载失败。7.1那几天CDN是有些干扰,可能会有几个js加载不上。你现在再试试,看看是不是cdn js没加载上。

chennqqi commented 3 years ago

问题已经定位了,markdown组件使用了cloudflare的js cdn,如果你当地cloudflare被屏蔽了就打不开了,可以暂时用ReplaceCDN解决,这个BUG后续版本会修复

Phuker commented 2 years ago

问题已经定位了,markdown组件使用了cloudflare的js cdn,如果你当地cloudflare被屏蔽了就打不开了,可以暂时用ReplaceCDN解决,这个BUG后续版本会修复

不是 Markdown 组件的事,前端使用了 cdn.jsdelivr.net 的 vue.js 等基础的库,在楼主的 纯内网环境 无法加载,则所有功能都无法使用

解决:作者在文档里推荐 ReplaceCDN 浏览器扩展程序,个人认为在纯内网环境搭建给大家用的话不太现实,每个人都装一遍太麻烦。我目前的绕过方法是在 Dockerfile 里魔改编译后的前端文件,这样大部分基础功能都能用了:

FROM sort/godnslog:0.7.0

COPY --chown=app:app cdn /app/dist/cdn

ARG CDN_MIRROR_PATH

RUN echo 'Modify static files ...' && \
sed -i 's#<head>#<head><meta name="referrer" content="same-origin">#g' /app/dist/index.html && \
sed -i "s#<script src=//cdn.jsdelivr.net#<script src=${CDN_MIRROR_PATH}/cdn.jsdelivr.net#g" /app/dist/index.html && \
echo 'Done'

其中 CDN_MIRROR_PATH 的值为 /cdn;顺手增加 <meta name="referrer" content="same-origin"> 标签是为了防止 Referer 信息泄露

cdn 目录建立镜像:

cdn
└── cdn.jsdelivr.net
    └── npm
        ├── axios@0.19.0
        │   └── dist
        │       └── axios.min.js
        ├── vue-router@3.1.3
        │   └── dist
        │       └── vue-router.min.js
        ├── vue@2.6.10
        │   └── dist
        │       └── vue.min.js
        └── vuex@3.1.1
            └── dist
                └── vuex.min.js

建议:不要使用 CDN,或者提供一个选项,可以使用本地静态文件