在Ubuntu 20.04上编译安装Nginx,你可以按照以下步骤进行操作:
sudo apt update
sudo apt install build-essential libpcre3-dev zlib1g-dev libssl-dev
以下是上述命令中使用的软件包的简要说明:
build-essential
:这是一个Ubuntu软件包,它包含了构建软件所需的一些基本工具和库,包括gcc
编译器、make
构建工具等。它是编译和构建软件的基础。libpcre3-dev
:PCRE(Perl Compatible Regular Expressions)是一个用于处理正则表达式的C库。libpcre3-dev
是PCRE的开发包,包含了编译和开发使用PCRE的软件所需的头文件和库。zlib1g-dev
:Zlib是一个用于数据压缩和解压缩的开源库,常用于Web服务器和应用程序。zlib1g-dev
是Zlib的开发包,包含了开发使用Zlib的软件所需的头文件和库。libssl-dev
:这是OpenSSL的开发包,OpenSSL是一个加密和安全通信库,常用于保护数据的传输和存储。libssl-dev
包含了开发使用OpenSSL的软件所需的头文件和库。这些软件包通常在编译和安装诸如Nginx等需要依赖它们的软件时需要安装,以确保这些软件能够正常运行并支持相关功能。它们提供了必要的工具和库,以满足软件的编译和运行要求。
你可以从官方网站下载最新版本的Nginx:
wget https://nginx.org/download/nginx-1.24.0.tar.gz
请确保替换上面的URL为最新版本的URL,以下载最新版本的Nginx。
tar -xzvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
你可以运行以下命令,根据你的需求自定义编译选项:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_realip_module
这里的示例命令包括了一些常见的模块,如SSL和RealIP模块。
--with-http_ssl_module
:这个选项用于启用Nginx的SSL模块,允许Nginx处理HTTPS请求。启用此模块后,Nginx可以加密和解密通过HTTPS传输的数据,从而实现安全的数据传输。通常,在支持HTTPS的网站上,你需要启用这个模块,以便能够使用SSL/TLS协议进行加密通信。--with-http_realip_module
:这个选项用于启用Nginx的RealIP模块,它用于获取客户端的真实IP地址,即使Nginx位于代理服务器或负载均衡器后面。这对于确保你在日志记录和访问控制中使用的IP地址是客户端的真实IP地址非常有用。该模块允许你配置Nginx以识别代理服务器发送的真实客户端IP地址,而不是代理服务器的IP地址。这两个模块是Nginx的标准模块,常用于构建Web服务器,特别是在需要支持HTTPS和代理服务器等情况下。根据你的需求,你可以根据Nginx的编译选项来启用或禁用其他模块,以满足特定的功能和性能需求。
make
sudo make install
sudo /usr/local/nginx/sbin/nginx
可以使用浏览器访问服务器的IP地址或域名。如果一切正常,你应该能够看到Nginx的欢迎页面。
sudo /usr/local/nginx/sbin/nginx
sudo /usr/local/nginx/sbin/nginx -s stop
sudo /usr/local/nginx/sbin/nginx -s reload
这样,你就在Ubuntu 20.04上成功编译和安装了Nginx。
sudo ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
配置完软连接就可以使用下面的命令了。
sudo nginx -v
sudo nginx -V
sudo nginx -s process
sudo nginx -s stop
sudo nginx -s quit
sudo nginx -t