FreeNginx 在 NGINX 核心开发者因内部冲突和政策变化而辞职后引起了很多关注,他启动了自己的 FreeNginx 项目,一个重视社区贡献胜过公司利益的自由开源版本。
目前,这个项目还很新,你几乎找不到在使用上的任何差异,但未来有望迅速改进、修复问题,并引入令人兴奋的新功能。
如果你想尝试一下,那么请阅读本文的全部内容,了解如何使用实际示例从源代码在Ubuntu上安装FreeNginx。
相关:Nginx 新篇章:开发者拒绝妥协,启动 FreeNginx https://www.linuxmi.com/nginx-to-freenginx.html
如何在Ubuntu上安装FreeNginx
在撰写本文时,安装FreeNginx的唯一可用选项是通过Linux源代码;对于Windows用户,可以在下载部分找到压缩文件。
在本文中,我们将专注于在Ubuntu上安装FreeNginx,所以请逐一按照下面提到的每个步骤进行操作。
1、打开终端,并执行以下命令以更新系统仓库信息:
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% sudo apt update
2、安装所需的软件包、依赖项和库,以及用于源代码编译的开发工具。
linuxmi@linuxmi ~/www.linuxmi.com
% sudo apt install -y wget build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev libgd-dev libxml2 libxml2-dev uuid-dev
3、停止并移除系统中现有的NGINX,以避免以后可能出现的潜在冲突问题。
打开终端,并执行以下命令以更新系统仓库信息:
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% sudo apt --purge remove nginx-*
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% sudo apt autoremove
4、现在,访问官方的FreeNginx下载页面,并下载您希望安装的FreeNginx版本(主线版本、稳定版本或遗留版本)的源代码压缩包文件。
作为另一种选择,您还可以通过终端使用wget命令进行下载。
linuxmi@linuxmi ~/www.linuxmi.com
% wget https://freenginx.org/download/freenginx-1.25.4.tar.gz
5、解压下载的压缩包文件,然后将其移动到提取的目录中。
linuxmi@linuxmi ~/www.linuxmi.com
% tar -zxvf freenginx-*.tar.gz && cd freenginx*/
6、使用配置标志为 NGINX 配置文件、访问日志和错误日志路径以及一些 NGINX 模块配置自定义路径。
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% ./configure --prefix=/var/www/html --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-pcre --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-http_ssl_module --with-http_image_filter_module=dynamic --modules-path=/etc/nginx/modules --with-http_v2_module --with-stream=dynamic --with-http_addition_module --with-http_mp4_module
7、配置完成后,继续使用以下两个命令编译 NGINX 源代码并安装它:
linuxmi@linuxmi ~/www.linuxmi.com
% make
linuxmi@linuxmi ~/www.linuxmi.com
% sudo make install
8、FreeNginx 现已成功安装;您可以检查其版本和配置选项。
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% nginx -v
nginx version: freenginx/1.25.4
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% nginx -V
9、现在,如果 Nginx 已经在运行,请停止它,然后在 /lib/systemd/system 路径下创建一个 Freenginx systemd 单元文件,用于管理 Freenginx。
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% nginx -s stop
linuxmi@linuxmi ~/www.linuxmi.com/freenginx-1.25.4
% sudo vi /lib/systemd/system/nginx.service
然后粘贴此脚本:
[Unit]
Description=The Freenginx HTTP and reverse proxy server
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
现在,按下 Esc 键退出编辑模式,然后输入 :,接着写入并执行 wq! 命令来保存文件。
完成!现在您可以使用 systemctl 命令来管理 FreeNginx,以下是一些可用于管理 FreeNginx 的 systemctl 命令示例:
命令 | 说明 |
---|---|
sudo systemctl status nginx | 检查 FreeNginx 的状态。 |
sudo systemctl enable nginx | 在启动时自动启动 FreeNginx。 |
sudo systemctl start nginx | 启动 FreeNginx 服务器。 |
sudo systemctl stop nginx | 停止 FreeNginx 服务器。 |
sudo systemctl disable nginx | 在启动时禁用 FreeNginx 的自动启动。 |