公司内网网站搭建
公司内网网站搭建这件事,公司最怕的内网是把它想得太复杂。去年我帮一家三十多人的网站设计公司做内网,他们之前用微信群加共享文件夹,搭建结果文件版本乱成一锅粥,公司找个两年前的内网合同要翻半小时聊天记录。后来我直接给他们上了一套基于树莓派的网站轻量方案,总成本不到一千块,搭建现在他们行政小妹自己就能维护。公司
硬件选型上别被供应商忽悠。内网大多数公司内网就几十到几百人访问,网站并发量低得可怜。搭建一台退役的公司办公电脑,加块SSD,内网装个Debian,网站性能绰绰有余。我见过有公司花三万买品牌机架服务器,结果CPU常年占用不到5%。那家设计公司用的树莓派4B,8G内存版,跑Nginx+PHP+MariaDB,同时二十个人在线填报销单、看公告、传设计稿,响应时间稳定在200毫秒以内。风扇都不用装,摸上去只是温的。
操作系统和软件栈的选择取决于谁维护。如果公司有运维,CentOS Stream或Ubuntu Server都行。如果没有专职IT,强烈建议用Ubuntu Server LTS,社区文档多,出问题搜得到答案。Web服务器用Nginx,别用Apache,配置文件写起来清爽太多。数据库看需求:纯静态页面加个SQLite就够;要存员工账号和权限,MySQL或MariaDB更顺手。那家设计公司最初想用Docker,我劝住了——他们连Linux命令都记不全,加一层容器抽象纯粹是给自己挖坑。
内网网站的功能模块要克制。很多公司一上来就想要OA全套:考勤、审批、文档、通讯录、日程。结果做出来没人用,因为每个模块都半死不活。我建议先做三个刚需:公告栏、文件共享、员工通讯录。公告栏用Markdown编辑,比富文本编辑器稳定,还省得调字体颜色。文件共享别搞复杂权限,就按部门分文件夹,用Nginx的autoindex加个基础认证,简单粗暴但有效。通讯录直接从HR的Excel导出成CSV,用PHP读出来渲染成表格,搜索用浏览器自带的Ctrl+F。那家公司用了三个月后,自己提需求加了报销单填写和会议室预订,这时候再加功能,接受度高得多。
网络配置是坑最多的地方。内网网站不需要公网IP,但得让员工在办公区WiFi和有线网都能访问。最稳妥的做法是在路由器上给服务器绑个静态IP,比如192.168.1.100,然后在内网DNS里加条A记录,指向这个IP。员工记不住IP?让他们访问neiwang.company.local就行。如果公司用Windows域控,直接在DNS服务器上加记录。没有域控就用dnsmasq,树莓派上跑一个,把公司所有设备的DNS指向它。那家设计公司一开始用IP访问,结果有人把地址发到客户群里,暴露了内网结构。后来换成域名,顺眼多了。
安全方面别过度设计。内网网站不是银行系统,搞双因素认证、WAF、入侵检测纯属自找麻烦。基本措施做到位:HTTPS用Let's Encrypt的免费证书,内网域名也能签;后台登录加个fail2ban,防暴力破解;文件上传目录禁止执行PHP;数据库只监听localhost。那家公司有次被员工误删了公告,我给他们加了个回收站功能——删除的公告进数据库软删除状态,管理员能恢复。比什么审计日志都实用。
维护成本要提前算清楚。树莓派方案每月电费不到五块钱,但SD卡可能一年坏一次,得备张新的。用旧电脑的话,硬盘是消耗品,建议用RAID1或者每天自动rsync到另一台机器。软件更新别追新,Ubuntu LTS每两年升级一次就行。那家设计公司现在每半年让我远程看一眼,平时他们自己重启一下服务。有次网站打不开,原因是行政小妹把树莓派电源碰掉了,插回去就好。这种故障比软件bug常见十倍。
最后说个反直觉的观察:内网网站做得越“简陋”,员工用得越频繁。那家公司最初想做个带动画效果的门户首页,我给他们砍成了纯文字列表。结果公告点击率反而高了——因为加载快,手机上也看得清。内网工具的核心价值是“找得到、传得动、改得了”,不是好看。把精力花在优化搜索和减少点击层级上,比调CSS有价值得多。