使用 Lighttpd 作为 Web 服务器的常规配置
前言
Apache 逐渐没落,nginx 火遍了全网,Caddy 后起之秀,不知还有谁能记起,曾经还有一位英雄支撑着我们的网络世界,又不知多少我们的青春泡在豆瓣社区。随着4G的来临,人们开始丰富了自己的网络生活,讨论文章、兴趣、音乐、电影已经成了主要生活要素。那些年,豆瓣网分享了无数的图片,这些图片被千万人下载,到底是什么样的服务器承载着如此压力?
答案就是:Lighttpd
Lighttpd 是一款来自德国的老牌 Web 服务器,说到这个名字可能大家不熟悉,实际上,Wikipedia、YouTube、豆瓣等很多静态资源请求丰富的网站,都是采用的 Lighttpd。
它有着极低的资源消耗和极高的静态资源相应速度,同时它能做到常规 Web 服务器的所有能力。可是,如今,已是往日英雄,永远也等不到 2.0,但在静态处理上依旧那么高效。在很多静态资源的场景下,还是需要独战群雄!
下载与安装
Ubuntu 安装
[Shell] 纯文本查看 复制代码 apt install lighttpd
对于 Linux 用户,直接通过本身的包管理器即可安装,比如 dnf、yum,但是 Windows 官方并没有提供直接的二进制版本,需要第三方编译版本。
Windows 下载与安装
[Shell] 纯文本查看 复制代码 http://lighttpd.dtech.hu/
# 在这个地址下,可以找到编译好的 MSVC 版,也就是在 Windows 编译的版本。
下载对应 win32、win64 的 zip 压缩包即可。
然后,解压到一个目录,并配置好 PATH 环境变量即可使用和运行。
基本配置
[Shell] 纯文本查看 复制代码 /etc/lighttpd/lighttpd.conf
为 Lighttpd 的配置文件,Windows 版在对应的 config。
[Shell] 纯文本查看 复制代码 # 设定网页文档根目录。
server.document-root = "/home/itcast/wwwroot/"
# 绑定到地址 127.0.0.1
server.bind = "127.0.0.1"
# 绑定到端口 8080
server.port = 8080
配置 MIME
[Shell] 纯文本查看 复制代码 mimetype.assign = (
".png" => "image/png",
".jpg" => "image/jpeg",
".jpeg" => "image/jpeg",
".html" => "text/html",
".txt" => "text/plain",
"" => "text/plain" # 缺省配置
)
修改响应头
[Shell] 纯文本查看 复制代码 server.tag = "nginx/2.0.0" # 伪装服务器名称,避免黑客攻击。
反向代理
[Shell] 纯文本查看 复制代码 # 要开启代理模块
server.modules = (
"mod_proxy"
)
# 将所有 [url=www.myweb.com]www.myweb.com[/url] 的请求分配给不同服务器。
$HTTP["host"] == "www.myweb.com" {
proxy.balance = "hash" # 设置负载均衡模式。
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81),
("host" =>"127.0.0.2","port"=>8080)
)
)
}
Lighttpd 的方向代理在负载均衡上有些功能还是不足,一般还是做静态服务器使用非常合适。
总结
Lighttpd 配置非常丰富,更多功能需要自己去查询文档进行了解。虽然它如今已经不是主流产品,但是自身设计上的严谨和效率,还是能满足一些特殊场景和特殊环境要求,希望大家结合实际情况,选择合适的 Web 服务器用于项目部署和开发调试。
|