如何自定义OpenWrt的luci web管理器菜单,以及清除缓存

一切简化说明,照着做就OK
比如我们要把AdGuard的菜单加进去,那执行以下步骤(AdGuard的端口我是设置的3000)
1 新建这样一个文件

vi /usr/lib/lua/luci/controller/admin/adguard.lua

2 在adguard.lua文件里粘贴如下代码

-- Licensed to the public under the Apache License 2.0.

module("luci.controller.admin.adguard", package.seeall)
function index()
        entry({"admin", "adguard"}, firstchild(),"AdGuard", 44).dependent=false
        entry({"admin", "adguard", "adguard"}, template("adguard/adguard"), "AdGuard", 2)
end

3 创建文件夹

mkdir /usr/lib/lua/luci/view/adguard

4 创建新文件

vi /usr/lib/lua/luci/view/adguard/adguard.htm

5 在adguard.htm文件里粘贴如下代码

<%+header%>
<div class="cbi-map">
        <h2 name="content"><%=translate("AdGuard")%></h2>
        <iframe id="adguard" style="width: 100%; min-height: 1200px; border: none; border-radius: 3px;"></iframe>
</div>
<script type="text/javascript">
        var url_head="http://"
        if("https:" == document.location.protocol)
            url_head="https://";

        document.getElementById("adguard").src = url_head + window.location.hostname + ":3000";
</script>
<%+footer%>

6 清除缓存文件,这一步相当重要,要不然有可能显示不出来

rm -rf /tmp/luci-modulecache/*
rm /tmp/luci-indexcache

现在就能看到了
《如何自定义OpenWrt的luci web管理器菜单,以及清除缓存》

参考资料 blog.csdn.net/fulinus/article/details/48785449



发表评论

电子邮件地址不会被公开。 必填项已用*标注

8 + 2 =