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 的自动启动。

发表回复