一、luci-base目录下包含如下图几个文件夹:
1、htdocs(html+docs):此目录存放HTML相关文件,主要包含以下两个目录,当烧录到硬件设备后,将拷贝到/www根目录下
cgi-bin:存放luci启动脚本
luci-static:存放HTML相关文件,包含CSS、JS及网页图片等文件
2、luasrc(lua+src):此目录存放系统功能的LUA文件及M(model)、V(view)、C(controller)文件夹,当烧录到硬件设备后,将拷贝到/usr/lib/lua/luci目录下
C(controller):控制器,生成页面的菜单栏并定义各个页面的调用方法
M(model):数据模型,根据底层UCI配置文件生成页面
V(view):视图,HTML页面
3、po:定义页面的语言风格
4、root:存放配置文件,该目录下的所有文件将拷贝到硬件设备根目录下
5、src:生成所需要的库文件及LUA脚本
6、Makefile:定义luci-base的编译方法
二、luci-mod-admin-full目录
由此可以看出,LUCI的文件框架都是以luci-base目录为基础,其他主题及模式都是在此基础之上进行增减。
三、/www目录结构
cgi-bin:此文件从luci-base下拷贝过来的,存放luci启动脚本
index.html :http请求的主页面,默认是/www/index.html,这个文件里显示了登录时常看见的那句话“LuCI - Lua Configuration Interface”,同时也指定了href链接/cgi-bin/luci
luci-static:存放HTML相关文件,包含CSS、JS及网页图片等文件。不同主题的htdocs/luci-static都将拷贝到这个目录下
四、/usr/lib/lua/目录结构/
usr/lib/lua/路径,顾名思义,存放了与LUA相关的文件,在LUA脚本中,通过require命令引用的脚本及函数,起始路径都是该目录。同时,不同模型及主题的luasrc文件夹都拷贝到/usr/lib/lua/luci目录下,通过/etc/config/luci中的mediaurlbase字段决定当前使用的主题及语言。