如何在 QNAP 中正确设置 QPKG_WEBUI 变量
How to set properly QPKG_WEBUI variable in QNAP
我正在尝试为 QNAP 开发应用程序。我对QNAP实在是一窍不通,请帮帮我!
我成功创建了一个 qpkg 包并正确安装了它,并且可以正常工作。但是当我想给我的应用程序一个网络界面时,问题就出现了。
我只有一个 index.html 文件,里面只有一个 helloworld 文本。
我用 QDK 创建环境,我有 /share/XXX_DATA/.qpkg/QDK/MyApp 文件夹
现在,我创建了其他文件的一部分
/share/XXX_DATA/.qpkg/QDK/MyApp/Web
并把我的 index.html 和我的 HelloWorld 消息放在那里。
好了,我修改/share/XXX_DATA/.qpkg/QDK/MyApp/qpkg.cfg文件,设置变量
QPKG_WEBUI="/MyApp/Web"
从文档中,例如 https://edhongcy.gitbooks.io/qdk-qpkg-development-kit/content/qpkg-configuration-file.html ,我可以看到
QPKG_WEBUI
Relative path to installed application's web interface (the
specified path is relative the configured location of web server data;
usually /share/Web or /share/Qweb.) The specified path must start with
a '/'. The displayed link can only be accessed when the QPKG is
enabled. A default value of '/' is set automatically at installation
if QPKG_WEB_PORT has been given a value and QPKG_WEBUI is empty.
然后我还在 /share/XXX_DATA/Web 文件夹中创建一个 link 到我的 web 文件夹。
(/share/Web 只是 link 到 /share/XXX_DATA/Web)
即:
ln -s /share/XXX_DATA/.qpkg/QDK/MyApp/shared/Web /share/XXX_DATA/Web/MyApp/Web
好吧,现在发生了什么,当我在我的应用程序中单击 "open" 时,我可以在我的 QNAP 中打开一个 Window,但它是完全空白的。我尝试了很多不同的变体,但我的 window 总是空白。
我必须修改 qpkg.cfg 文件的一部分吗?
你有一些带有示例代码的文档吗?
QPKG_WEBUI 是要修改的正确变量吗?
非常感谢大家
仔细研究问题,并尝试其他有相同问题的应用程序后,我发现问题不是 QPKG_WEBUI 变量。
问题是我的 QNAP 网络界面(我不知道这是对每个 QNAP 通用的还是仅在我的情况下)具有默认端口 8080,但 WEBUI 具有默认端口 80。
那么浏览器似乎为了跟进Same Origin Policy而屏蔽了QNAP界面内iframe中的WEBUI。在新 window 中打开时,WEBUI 工作正常。
设置 QPKG_USE_PROXY=1 变量让 iframe 也能正常工作。
我正在尝试为 QNAP 开发应用程序。我对QNAP实在是一窍不通,请帮帮我!
我成功创建了一个 qpkg 包并正确安装了它,并且可以正常工作。但是当我想给我的应用程序一个网络界面时,问题就出现了。
我只有一个 index.html 文件,里面只有一个 helloworld 文本。
我用 QDK 创建环境,我有 /share/XXX_DATA/.qpkg/QDK/MyApp 文件夹
现在,我创建了其他文件的一部分
/share/XXX_DATA/.qpkg/QDK/MyApp/Web
并把我的 index.html 和我的 HelloWorld 消息放在那里。
好了,我修改/share/XXX_DATA/.qpkg/QDK/MyApp/qpkg.cfg文件,设置变量
QPKG_WEBUI="/MyApp/Web"
从文档中,例如 https://edhongcy.gitbooks.io/qdk-qpkg-development-kit/content/qpkg-configuration-file.html ,我可以看到
QPKG_WEBUI Relative path to installed application's web interface (the specified path is relative the configured location of web server data; usually /share/Web or /share/Qweb.) The specified path must start with a '/'. The displayed link can only be accessed when the QPKG is enabled. A default value of '/' is set automatically at installation if QPKG_WEB_PORT has been given a value and QPKG_WEBUI is empty.
然后我还在 /share/XXX_DATA/Web 文件夹中创建一个 link 到我的 web 文件夹。 (/share/Web 只是 link 到 /share/XXX_DATA/Web) 即:
ln -s /share/XXX_DATA/.qpkg/QDK/MyApp/shared/Web /share/XXX_DATA/Web/MyApp/Web
好吧,现在发生了什么,当我在我的应用程序中单击 "open" 时,我可以在我的 QNAP 中打开一个 Window,但它是完全空白的。我尝试了很多不同的变体,但我的 window 总是空白。
我必须修改 qpkg.cfg 文件的一部分吗? 你有一些带有示例代码的文档吗?
QPKG_WEBUI 是要修改的正确变量吗?
非常感谢大家
仔细研究问题,并尝试其他有相同问题的应用程序后,我发现问题不是 QPKG_WEBUI 变量。
问题是我的 QNAP 网络界面(我不知道这是对每个 QNAP 通用的还是仅在我的情况下)具有默认端口 8080,但 WEBUI 具有默认端口 80。
那么浏览器似乎为了跟进Same Origin Policy而屏蔽了QNAP界面内iframe中的WEBUI。在新 window 中打开时,WEBUI 工作正常。
设置 QPKG_USE_PROXY=1 变量让 iframe 也能正常工作。