openwrt挂载网站,让你的移动硬盘作为uhttpd挂载服务器

openwrt挂载网站,让你的移动硬盘作为uhttpd挂载服务器

V+变量
2025-03-07 / 0 评论 / 6 阅读 / 正在检测是否收录...

一前言

之前本站介绍过,如何更改openwrt路由器的端口号,来解决电信、联通和移动运营商封禁家庭宽带端口号的文章:解决电信运营商封禁80和443端口,修改openwrt路由器的web访问端口号
今天介绍下如何将本地挂载的移动硬盘作为网站服务根目录,实现多端口访问。本文介绍了如何管理和配置uhttpd服务,包括启动、停止、重启和重新加载配置文件。通过修改/uetc/config/uhttpd配置,可以监听多个端口,并允许通过http://ip:8080/访问到特定目录。此外,还提到了CGI脚本的配置,如cgi_prefix和lua_prefix,以及/home、/key和/crt选项的作用。提供了多个相关脚本和资源链接供进一步学习。

二配置教程

1 SSH链接到旁路由

2 编辑/ect/config/uhttpd文件

vim /ect/config/uhttpd

在其中增加如下的代码

config uhttpd 'xboy'
    list listen_http '0.0.0.0:8080'
    list listen_http '[::]:8080'
    option home '/mnt/sda1/xboy'
    option cgi_prefix '/cgi-bin'
    option ubus_prefix '/ubus'

注:上面代码中各参数的含义

0.0.0.0:8080:表示监控IPV4的8080端口号;
[::]:8080:表示监控IPV6的8080端口号;
/mnt/sda1/xboy:设定的网站访问目录,比如移动硬盘下的xboy文件夹;
/cgi-bin:cgi程序目录,如果是静态html可以不配置,cgi_prefix  定义了CGI脚本的前缀,该前缀相对应home路径,如果该字段为空,则cgi功能失效;
lua_prefix  将请求转发给内置的Lua解析器,如果为空,则Lua功能失效;
ubus_prefix  ubus接线目录,如果为空,则ubus功能失效。

3 让uhttpd加载配置文件

/etc/init.d/uhttpd reload

4 重启uhttpd程序

/etc/init.d/uhttpd restart

5 正常的话就可以用 http://路由器ip:8080访问了

三注意事项

1 uhttpd相关命令

/etc/init.d/uhttpd start   //启动uhttpd服务
/etc/init.d/uhttpd stop    //停止uhttpd服务
/etc/init.d/uhttpd restart //重启uhttpd服务
/etc/init.d/uhttpd reload  //重新加载uhttpd配置文件
/etc/init.d/uhttpd enable  //启用uhttpd自动运行
/etc/init.d/uhttpd disable //停用uhttpd自动运行

2 uhttpd的主配置文件

config uhttpd 'main'
    list listen_http '0.0.0.0:80'
    list listen_http '[::]:80'
    list listen_https '0.0.0.0:443'
    list listen_https '[::]:443'
    option redirect_https '0'
    option home '/www'
    option rfc1918_filter '1'
    option max_connections '100'
    option cert '/etc/uhttpd.crt'
    option key '/etc/uhttpd.key'
    option cgi_prefix '/cgi-bin'
    list lua_prefix '/cgi-bin/luci=/usr/lib/lua/luci/sgi/uhttpd.lua'
    option network_timeout '30'
    option http_keepalive '20'
    option tcp_keepalive '1'
    option ubus_prefix '/ubus'
    option script_timeout '3600'
    list index_page 'cgi-bin/luci'
    option max_requests '50'

上述参数含义从字面容易理解,key为私钥,crt为公钥。

3 其他参考资料

http://news.netcraft.com/archives/2011/04/06/april-2011-web-server-survey.html
https://forum.openwrt.org/search.php?search_id=1586996754
http://wiki.openwrt.org/doc/uci/uhttpd
http://wiki.openwrt.org/doc/howto/http.overview
http://en.wikipedia.org/wiki/Comparison_of_lightweight_web_servers 各种web服务器之比较

0

评论 (0)

取消