开源 Linux 服务器与中间件(六)服务器--Lighttpd

文章的目的记录所使用的的Linux服务器和中间件的配置和使用,防止时间太长忘记,进行重复工作。

相关链接:

开源 Linux 服务器与中间件(一)基本介绍

开源 Linux 服务器与中间件(二)嵌入式Linux服务器和中间件

开源 Linux 服务器与中间件(三)服务器--Nginx

开源 Linux 服务器与中间件(四)服务器--Tomcat

开源 Linux 服务器与中间件(五)服务器--Boa

推荐链接:

linux C 语言开发 (一) Window下用gcc编译和gdb调试

linux C 语言开发 (二) VsCode远程开发 linux

linux C 语言开发 (三) 建立云服务器

linux C 语言开发 (四) linux系统常用命令

linux C 语言开发 (五) linux系统目录结构

linux C 语言开发 (六) 程序的编辑和编译(vim、gcc)

linux C 语言开发 (七) 文件 IO 和标准 IO

linux C 语言开发 (八) 进程基础

linux C 语言开发 (九) 进程间通讯--管道

linux C 语言开发 (十) 进程间通讯--信号

linux C 语言开发 (十一) 进程间通讯--共享内存

linux C 语言开发 (十二) 进程间通讯--消息队列

Linux C到Android App开发推荐链接(入门十二章):

开源 java android app 开发(一)开发环境的搭建_csdn 开源 java android app-CSDN博客

开源 java android app 开发(一)开发环境的搭建-CSDN博客

开源 java android app 开发(二)工程文件结构-CSDN博客

开源 java android app 开发(三)GUI界面布局和常用组件-CSDN博客

开源 java android app 开发(四)GUI界面重要组件-CSDN博客

开源 java android app 开发(五)文件和数据库存储-CSDN博客

开源 java android app 开发(六)多媒体使用-CSDN博客

开源 java android app 开发(七)通讯之Tcp和Http-CSDN博客

开源 java android app 开发(八)通讯之Mqtt和Ble-CSDN博客

开源 java android app 开发(九)后台之线程和服务-CSDN博客

开源 java android app 开发(十)广播机制-CSDN博客

开源 java android app 开发(十一)调试、发布-CSDN博客

开源 java android app 开发(十二)封库.aar-CSDN博客

linux C到.net mvc开发推荐链接:

开源C# .net mvc 开发(一)WEB搭建_c#部署web程序-CSDN博客

开源 C# .net mvc 开发(二)网站快速搭建_c#网站开发-CSDN博客

开源 C# .net mvc 开发(三)WEB内外网访问(VS发布、IIS配置网站、花生壳外网穿刺访问)_c# mvc 域名下不可訪問內網,內網下可以訪問域名-CSDN博客

开源 C# .net mvc 开发(四)工程结构、页面提交以及显示_c#工程结构-CSDN博客

开源 C# .net mvc 开发(五)常用代码快速开发_c# mvc开发-CSDN博客

内容:Lighttpd服务器的安装,测试,以及页面修改。

目录

1.Lighttpd服务器用途

2.Lighttpd服务器安装

3.Lighttpd服务器测试

一、Lighttpd服务器用途

  1. 高性能与低资源占用

    • 事件驱动架构:与 Nginx 类似,Lighttpd 采用事件驱动(event-driven)模型,而不是 Apache 传统的多线程/多进程模型。这使得它可以用单个进程或少量进程高效处理成千上万的并发连接,内存和 CPU 开销极低。

    • 优化后的速度:其代码库经过高度优化,在提供静态内容(如图片、CSS、JavaScript 文件)时速度极快。

  2. 丰富的功能模块

    • Lighttpd 的核心非常小巧,大部分功能通过模块化加载实现。这种设计使得用户可以根据需要启用或禁用功能,保持服务器的精简。

    • 常用模块包括:

      • mod_fastcgimod_scgi:用于支持 PHP(通过 PHP-FPM)、Python、Ruby 等动态语言。

      • mod_proxy:提供反向代理功能,可以将请求转发到后端的应用服务器(如 Tomcat, Gunicorn, Node.js 等)。

      • mod_rewrite:强大的 URL 重写功能,与 Apache 的 mod_rewrite 兼容。

      • mod_ssl:提供 HTTPS 支持。

      • mod_auth:支持基本的 HTTP 认证。

      • mod_webdav:支持 WebDAV 功能。

      • mod_aliasmod_redirect:用于路径映射和重定向。

  3. 灵活且强大的配置

    • 配置文件(通常为 lighttpd.conf)语法清晰、简洁。

    • 支持基于条件的配置,可以根据 URL、主机名、IP 地址等条件应用不同的规则,非常灵活。

  4. 出色的安全特性

    • 由于其代码精简,潜在的攻击面相对较小。

    • 提供了 mod_secdownload 等模块,可以生成有时效性的下载链接,防止盗链。

    • 易于与 chroot 环境配合使用,进一步增强安全性。

  5. 支持现代 Web 技术

    • HTTP/2 支持:从 1.4.56 版本开始,Lighttpd 原生支持 HTTP/2 协议,提升了网页加载效率。

    • WebSockets :通过 mod_proxy 可以很好地代理 WebSocket 连接。


典型应用场景

基于以上特点,Lighttpd 在以下场景中表现出色:

  1. 高并发静态内容服务

    • 这是 Lighttpd 最经典和擅长的领域。如果你需要为一个访问量巨大的网站提供图片、视频、CSS、JS 等静态资源,Lighttpd 是绝佳选择。它的低内存占用意味着在相同的硬件条件下,它能比传统服务器处理更多的并发请求。

    • 示例:大型网站(如 Wikipedia 曾长期使用)、内容分发网络的边缘节点。

  2. 作为反向代理服务器

    • Lighttpd 可以放置在其他应用服务器(如 Tomcat, Flask, Django, Node.js)的前端,作为反向代理。它负责处理静态请求、负载均衡、SSL 终端,并将动态请求转发给后端应用服务器,从而减轻后端服务器的压力。

    • 示例:一个由 Lighttpd 处理静态文件和 SSL,并代理到后端 Java 应用服务器的架构。

  3. 资源受限的环境

    • 嵌入式系统VPS(虚拟专用服务器)低配云服务器。由于其极低的内存占用,Lighttpd 可以在仅有 128MB 或更少内存的服务器上流畅运行,而 Apache 在这种情况下可能会显得吃力。
  4. FastCGI / SCGI 应用的前端

    • 与 PHP-FPM 配合是天作之合。Lighttpd 的 mod_fastcgi 非常高效,是运行 PHP 应用(如 WordPress, Drupal 等)的一个高性能解决方案。

    • 示例:使用 Lighttpd + PHP-FPM 来部署一个高性能的博客或内容管理系统。

  5. 视频流媒体服务

    • 对于需要处理大量并发流媒体请求的场景(如视频点播),Lighttpd 的高效事件驱动模型能够很好地胜任。mod_flv_streaming 模块还专门提供了对 FLV 视频格式的流式传输支持。

二、Lighttpd服务器安装

  1. 更新软件包列表

    sudo apt update

  1. 安装 Lighttpd

    sudo apt install lighttpd

  1. 启动和设置开机自启

    启动服务

    sudo systemctl start lighttpd

    设置开机自启

    sudo systemctl enable lighttpd

    检查状态

    sudo systemctl status lighttpd

三、Lighttpd服务器测试

输入http://localhost/

  1. 查看默认网站目录

Lighttpd 默认的网站文件位于:在这里可以修改页面

复制代码
/var/www/html/
默认首页文件是 index.lighttpd.html
  1. 主要配置文件

    主配置文件

    /etc/lighttpd/lighttpd.conf

    配置模块目录

    /etc/lighttpd/conf-available/

    启用模块目录

    /etc/lighttpd/conf-enabled/

  2. 测试配置文件

修改配置后,检查语法是否正确:

复制代码
sudo lighttpd -t -f /etc/lighttpd/lighttpd.conf
  1. 重新加载配置

    sudo systemctl reload lighttpd

    sudo systemctl restart lighttpd

相关推荐
南棱笑笑生8 小时前
20251217给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-5.10】后调通ov5645【只能预览】
linux·c语言·开发语言·rockchip
爬山算法9 小时前
Netty(10)Netty的粘包和拆包问题是什么?如何解决它们?
服务器·网络·tcp/ip
Sleepy MargulisItG9 小时前
【Linux网络编程】应用层协议:HTTP协议
linux·服务器·网络·http
logic_59 小时前
静态路由配置
运维·服务器·网络
G31135422739 小时前
Linux 内核设计中的核心思想与架构原则
linux·架构·php
zhuzewennamoamtf9 小时前
Linux内核platform抽象、数据结构、内核匹配机制
linux·运维·数据结构
suzhou_speeder10 小时前
企业数字化网络稳定运行与智能化管理解决方案
运维·服务器·网络·交换机·poe·poe交换机
Kira Skyler11 小时前
ELF文件解析 elf.o 文件主要内容.md
linux
逐梦吧!旅行者11 小时前
Linux MySQL 5.7用户管理与用户密码的设置问题
linux·mysql
RisunJan11 小时前
Linux命令-grpck命令(验证和修复组配置文件(`/etc/group` 和 `/etc/gshadow`)完整性的工具)
linux·运维·服务器