当前位置:首页 > 焦点 > 搭建内网网站 正文

搭建内网网站

来源:烟消火灭网   作者:综合   时间:2026-10-17 05:54:03

公司那台老服务器一直闲置在机房角落,搭建上面落了一层灰。内网去年我把它翻出来,网站装了块120G的搭建固态硬盘,接上内网交换机。内网现在它跑着三个内部站点:一个文档库、网站一个任务看板、搭建还有一个给测试组用的内网日志查询页。整个过程没花一分钱软件授权费。网站

硬件这块其实没啥好纠结的搭建。你手头随便一台能开机的内网电脑,内存有个4G,网站就能当服务器用。搭建我试过用树莓派4B跑同样的内网服务,同时在线20个人访问完全不卡。网站关键不在配置,在于你把机器放在哪儿。必须接在局域网交换机下面,最好跟办公电脑同一个网段。别想着从外网访问,那是另一个话题。内网网站的意义就在于“关起门来自己用”。

操作系统我选的Ubuntu Server 22.04,没装图形界面。有人觉得命令行难搞,但装完Nginx之后你基本不用再碰系统配置。Nginx的默认站点目录是/var/www/html,把写好的HTML文件扔进去,浏览器输入服务器IP就能看到。我第一次搭的时候犯了个蠢错误——防火墙没放行80端口,折腾了半小时才发现。后来学乖了,ufw allow 80/tcp这条命令现在闭着眼都能敲出来。

静态页面用Nginx足够,但内网网站往往需要点动态功能。比如任务看板要能添加卡片、标记完成。我选了Python的Flask框架,轻得像个玩具。写个app.py,定义几个路由,用SQLite存数据。SQLite这个选择可能有人看不上,但内网并发量低,一个文件数据库完全扛得住。我们最多的时候也就30来人同时用,从来没锁表过。

部署Flask应用有个坑:Flask自带的开发服务器不能直接对外。得用Gunicorn做WSGI容器,再用Nginx做反向代理。配置大概长这样:

location /board/ {  proxy_pass http://127.0.0.1:8000/; proxy_set_header Host $host; }

这样访问http://服务器IP/board/就能看到Flask应用。记得Gunicorn要绑在127.0.0.1上,别绑0.0.0.0,否则等于绕过了Nginx直接暴露端口。

域名这事看情况。内网没有DNS服务器的话,让同事记IP地址挺烦的。我在路由器上做了个静态DNS映射,把wiki.lan指向服务器IP。普通家用路由器可能没这功能,那就退而求其次,在每台电脑的hosts文件里加一行。Windows的hosts在C:\Windows\System32\drivers\etc\下面,Mac和Linux在/etc/hosts。改完重启浏览器生效。

安全方面别想太复杂。内网网站不需要HTTPS证书,自签的反而让浏览器天天报警告。但有两件事必须做:一是Nginx配置里加上autoindex off;,防止别人直接列出你的文件目录;二是Flask应用里所有数据库查询都用参数化,别拼字符串。我见过一个内部工具因为SQL注入被同事恶作剧删了整张表,恢复花了一下午。

备份比什么都重要。我写了个cron任务,每天凌晨3点把/var/www和SQLite数据库文件打包,存到另一台机器的共享目录里。命令就一行:tar -czf /backup/site-$(date +%F).tar.gz /var/www /home/flask/app.db。别用复杂方案,简单粗暴最可靠。

最后说个真实体验:内网网站最大的敌人不是技术,是需求蔓延。今天有人说要加个搜索,明天有人要导出Excel。我的原则是——只做静态页面能搞定的事。真要复杂功能,直接推荐他们用现成的开源工具,比如Wiki.js或者Kanboard。自己写代码维护成本太高,除非你打算把这个当长期副业。

标签:

责任编辑:综合