在当今的 Web 服务器市场,Nginx 和 Apache 一直占据主导地位,但近年来一个名为 OpenLiteSpeed 的后起之秀正以其卓越的性能和友好的用户体验吸引越来越多开发者的关注。那么,OpenLiteSpeed 到底是什么?它与传统的 Nginx 和 Apache 相比有何优势?又该如何在实际环境中部署和使用呢?本篇教程将为你一一解答。
什么是 OpenLiteSpeed?
OpenLiteSpeed 是 LiteSpeed Technologies 开发的 LiteSpeed 企业版 Web 服务器的免费开源版本。它不像 Nginx 那样许多扩展(如 Brotli、nginx-cache-purge 等)会因为更新不及时导致对最新稳定版本不支持。OpenLiteSpeed 的组件有官方进行主要维护和更新,提供商用企业级的体验。据 LiteSpeed Tech 提供的 BenchMark,在 WordPress、Joomla、OpenCart、ModSecurity、小型静态文件、HTTP/2、HTTP/3 的测试上,OpenLiteSpeed 比 Apache HTTPD 和 Nginx 有着更好的表现。
官方地址: https://openlitespeed.org/
OpenLiteSpeed 的核心特性与支持环境
OpenLiteSpeed 之所以备受关注,是因为它拥有一系列引人注目的特性:
- 轻量级且高性能:优化的 Web 服务器,能够处理数千个并发连接
- 开箱即用的高性能特性:包括 LSCache、HTTP/3(QUIC)、TLS1.3、PageSpeed、Brotli 等
- 图形化管理界面:新手编辑配置再不用对着黑底白字的命令行发愁
- 兼容 Apache 重写规则:与 Apache 提供的大多数功能兼容,基本兼容 Apache HTTPD 生态
- 专属 LSAPI 接口:通过其专有的 LS-API 提供动态 PHP 页面,减少服务器响应请求的总体时间
支持的系统环境:
- Linux(包括 Ubuntu、CentOS、Debian 等)
- FreeBSD
- macOS
根据官方说明,OpenLiteSpeed 支持具有 64 位平台的 CentOS(6-7)、Debian(7-9)和 Ubuntu(14,16,18)等系统。
Ubuntu 20.04/22.04 下编译安装 OpenLiteSpeed + PHP 8.0/8.2 + MariaDB 10.5
下面我们详细介绍在 Ubuntu 20.04 或 22.04 上完整安装 OpenLiteSpeed 及相关组件的步骤。
1. 系统更新与依赖安装
sudo apt update -y && sudo apt upgrade -y sudo apt-get install build-essential libexpat1-dev libgeoip-dev libpcre3-dev zlib1g-dev libssl-dev libxml2-dev rcs libpng-dev -y
2. 安装 OpenLiteSpeed
有三种方法可以安装 OpenLiteSpeed,这里我们推荐使用官方仓库安装:
sudo wget -O - https://repo.litespeed.sh | sudo bash sudo apt update sudo apt install openlitespeed -y
安装完成后,启动 OpenLiteSpeed 服务:
sudo systemctl start lsws sudo systemctl enable lsws
检查服务状态:
sudo systemctl status lsws
如果一切正常,你将看到类似下面的输出:
● lshttpd.service - OpenLiteSpeed HTTP Server Loaded: loaded (/etc/systemd/system/lshttpd.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2024-09-17 18:01:54 CDT; 4min 5s ago Main PID: 3935 (litespeed) Tasks: 4 (limit: 2341) Memory: 5.1M CPU: 69ms CGroup: /system.slice/lshttps.service ├─3935 "openlitespeed (lshttpd - main)" ├─3946 "openlitespeed (lscgid)" └─3975 "openlitespeed (lshttpd - #01)"
3. 安装 MariaDB 10.5
sudo apt-get install mariadb-server mariadb-client -y sudo systemctl start mariadb sudo systemctl enable mariadb sudo systemctl status mariadb
4. 安装 PHP 8.0 和 PHP 8.2
OpenLiteSpeed 使用自己优化的 LiteSpeed PHP (LSPHP) 解释器,功能更快。安装命令如下:
sudo apt install lsphp80 lsphp80-common lsphp80-curl lsphp80-mysql lsphp80-opcache lsphp80-imap lsphp81 lsphp81-common lsphp81-curl lsphp81-mysql lsphp81-opcache lsphp81-imap lsphp82 lsphp82-common lsphp82-curl lsphp82-mysql lsphp82-opcache lsphp82-imap -y
5. 设置 OpenLiteSpeed 管理员密码
sudo bash /usr/local/lsws/admin/misc/admpass.sh
按照提示设置管理员用户名和密码。默认用户名为 admin,你可以直接按 Enter 使用默认值,然后设置安全密码。
6. 配置防火墙
开放必要的端口:
sudo ufw allow 7080,80,443,8088/tcp sudo ufw status
配置多个网站并使用不同 PHP 版本
现在我们已经完成了基础环境的安装,接下来配置两个网站,一个使用 PHP 8.0,另一个使用 PHP 8.2。
1. 访问 OpenLiteSpeed 管理面板
在浏览器中输入 http://你的服务器IP:7080
,使用之前设置的管理员账号和密码登录。
2. 创建第一个网站(使用 PHP 8.0)
在 OpenLiteSpeed 管理面板中:
- 点击左侧菜单的 “Virtual Hosts”
- 点击右上角的 “+” 按钮添加新虚拟主机
- 设置虚拟主机名,如 “php80site”
- 设置虚拟主机根目录,如 “/usr/local/lsws/php80site”
- 配置文件路径填写 “$SERVER_ROOT/conf/vhosts/php80site/vhconf.conf”
- 点击保存,然后点击 “CLICK TO CREATE” 创建配置文件
创建网站根目录:
sudo mkdir -p /usr/local/lsws/php80site/{conf,html,logs}
在管理面板中配置该虚拟主机使用 PHP 8.0:
- 进入该虚拟主机的配置页面
- 选择 “Script Handler” 标签
- 添加脚本处理器,后缀为 “php”,处理器为 “$SERVER_ROOT/lsphp80/bin/lsphp”
- 保存配置
3. 创建第二个网站(使用 PHP 8.2)
重复上述过程,但使用不同的设置:
- 虚拟主机名: “php82site”
- 虚拟主机根目录: “/usr/local/lsws/php82site”
- 配置文件路径: “$SERVER_ROOT/conf/vhosts/php82site/vhconf.conf”
创建网站根目录:
sudo mkdir -p /usr/local/lsws/php82site/{conf,html,logs}
配置该虚拟主机使用 PHP 8.2:
- 进入该虚拟主机的配置页面
- 选择 “Script Handler” 标签
- 添加脚本处理器,后缀为 “php”,处理器为 “$SERVER_ROOT/lsphp82/bin/lsphp”
- 保存配置
4. 配置监听器
现在需要将域名与虚拟主机关联:
- 在管理面板中,点击左侧的 “Listeners”
- 点击默认的 “Default” 监听器
- 在 “Virtual Host Mappings” 部分,为每个域名添加映射
- 将 php80site.com 映射到 php80site 虚拟主机
- 将 php82site.com 映射到 php82site 虚拟主机
- 保存配置并重启 OpenLiteSpeed 服务
5. 创建测试文件
为第一个网站创建 PHP 信息测试页:
sudo echo "<?php phpinfo(); ?>" > /usr/local/lsws/php80site/html/phpinfo.php
为第二个网站创建 PHP 信息测试页:
sudo echo "<?php phpinfo(); ?>" > /usr/local/lsws/php82site/html/phpinfo.php
现在,你可以通过访问各自的域名来测试两个网站,并确认它们分别运行在 PHP 8.0 和 PHP 8.2 上。
OpenLiteSpeed vs Nginx vs Apache:全面对比
为了帮助你更好地了解 OpenLiteSpeed 在众多 Web 服务器中的位置,下面我们从功能、性能和适用场景三个方面进行详细对比。
性能对比
根据 LiteSpeed Tech 提供的 BenchMark,在 WordPress、Joomla、OpenCart、ModSecurity、小型静态文件、HTTP/2、HTTP/3 的测试上,OpenLiteSpeed 比 Apache HTTPD 和 Nginx 有着更好的表现。一位用户反馈,在将 WooCommerce 网站从 Nginx+Apache 切换到 OpenLiteSpeed 后,网站访问速度明显提升,尽管网站本身优化并不好。这证明了 OpenLiteSpeed 在性能上的优势。
功能特性对比
特性 | OpenLiteSpeed | Nginx | Apache |
---|---|---|---|
HTTP/3 支持 | 原生支持 | 需要通过 Docker+Caddy 实现 | 有限支持 |
管理界面 | 内置图形化界面 | 需第三方工具 | 需第三方工具 |
缓存系统 | 内置 LSCache | 需配置第三方缓存 | 需配置第三方缓存 |
.htaccess 支持 | 兼容但不支持自动加载 | 不支持 | 完整支持 |
PHP 处理 | 专用 LSAPI | PHP-FPM | mod_php |
优缺点分析
OpenLiteSpeed 优点:
- 高性能,特别适合 PHP 应用
- 内置缓存和优化功能
- 友好的图形化管理界面
- 天然支持 HTTP/3
- 节省服务器资源
OpenLiteSpeed 缺点:
- 试错成本较高
- 主要对 WordPress 程序有较好的兼容性
- 国内使用人群相对较少
- 不支持自动加载 .htaccess 文件
Nginx 优点:
- 高并发处理能力强
- 资源占用低
- 丰富的第三方模块
- 广泛的应用和社区支持
Nginx 缺点:
- 配置相对复杂
- 动态内容处理需通过外部进程
- 不支持 .htaccess
Apache 优点:
- 配置简单直观
- 完整的 .htaccess 支持
- 模块生态系统丰富
- 广泛的文档和社区支持
Apache 缺点:
- 高并发下性能较差
- 内存占用较高
- 默认配置不适合高流量网站
适用环境和场景推荐
OpenLiteSpeed 适合:
- WordPress 网站:OpenLiteSpeed 对 WordPress 有极佳的兼容性和性能表现
- 资源有限的服务器:相比 Apache 和 Nginx,OpenLiteSpeed 更加节省资源
- 追求高性能的 PHP 应用:LiteSpeed PHP (LSPHP) 解释器通过其专有的 LS-API 提供动态 PHP 页面,功能更快
- 需要 HTTP/3 支持的场景:OpenLiteSpeed 原生支持 HTTP/3,而 Nginx 需要通过 Docker+Caddy 实现
- 新手用户:图形化管理界面让新手更容易配置 Web 服务器
Nginx 适合:
- 高并发静态内容服务
- 反向代理和负载均衡
- 微服务架构中的 API 网关
- 需要高度定制化配置的场景
Apache 适合:
- 共享主机环境
- 需要频繁使用 .htaccess 的场景
- 传统 Web 应用
- 需要大量成熟模块支持的项目
总结
OpenLiteSpeed 作为一款新兴的 Web 服务器,以其卓越的性能、用户友好的管理界面和对现代 Web 标准的良好支持,正在成为 Nginx 和 Apache 的有力竞争者。特别是对于 WordPress 网站、资源有限的服务器环境以及追求高性能 PHP 应用的场景,OpenLiteSpeed 表现尤为出色。
当然,它也存在一些缺点,如相对较小的用户社区、对非 PHP 应用的支持不如传统服务器等。但总体来看,如果你正在寻找一个性能优异、配置简单且功能现代的 Web 服务器,OpenLiteSpeed 绝对值得一试。
无论是选择 OpenLiteSpeed、Nginx 还是 Apache,最重要的是根据你的具体需求、技术栈和技术能力做出合适的选择。每种 Web 服务器都有其独特的优势和适用场景,理解这些差异将帮助你做出更明智的决策。
本文由万事屋原创,转载请保留出处:https://www.rei3.com
没有回复内容