如何在 Linux 上从源代码安装和配置 Nginx
Nginx是由 Igor Sysoev 用 C 语言编写的,用于克服 C10K 问题(即并发处理 10k(万)个连接)。问题是如何优化网络套接字以同时处理多个客户端。 Nginx 是该问题的解决方案。它是一个免费的开源软件,用于反向代理、负载均衡器、Web 服务、媒体流等。它的发音为“Engine X”,通过去掉其中的字母“e”,名称变为“Nginx”。在本文中,我们将看到有关如何从源代码安装和配置 Nginx 服务器的分步指南。
Nginx 的特点:
- 它支持带缓存的反向代理。
- 它支持 WebSockets、负载平衡和容错。
- 它支持带缓存的 FastCGI。
- 它可用于处理静态文件、索引文件和自动索引。
- 它支持 SSL。
- Nginx 中可以配置基于名称和基于 IP 的虚拟服务器。
- HTTP 基本认证
- Nginx 支持所有主要的邮件代理服务器功能。
安装 Nginx
步骤 1:从此链接下载 Nginx 存档并将存档文件保存在您的桌面上。
或者,您可以通过在终端中运行以下命令来下载 Nginx Web 服务器存档文件。
wget http://nginx.org/download/nginx-1.21.1.tar.gz
wget 将获取存档文件并将其保存到您打开终端的位置。
第 2 步:下载存档后,我们需要导航下载该存档的文件夹,并且必须使用任何存档实用程序提取存档。您可以运行以下命令来提取 Nginx 存档文件。
tar -xf nginx-1.21.1.tar.gz
在此之后,文件夹结构应如下所示。
第 3 步:现在,要开始安装 Nginx,请导航到解压缩的文件夹并在此处打开终端,然后运行以下命令。
- 通过运行以下命令导航到目录:
cd ~/Desktop/nginx-1.21.1
- 启动 Nginx 的配置安装程序。
./configure
以下是配置文件的摘要:
Configuration summary
+ using system PCRE library
+ OpenSSL library is not used
+ md5: using system crypto library
+ sha1: using system crypto library
+ using system zlib library
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
- 使用 make 命令从源代码构建 Nginx 包。
make
- 运行make install命令来安装构建的包。
sudo make install
此命令将在/usr/local/nginx目录中安装 Nginx。
步骤4:通过运行以下命令确认安装并检查已安装的Nginx版本:
使用 cd 命令(更改目录)导航到/usr/local/nginx:
cd /usr/local/nginx/sbin
检查当前安装的 Nginx 版本。
./nginx -v
启动 Ngnix 服务器
按照以下步骤启动 Nginx 服务器。
- 通过在终端中运行以下命令导航到安装 Nginx 的默认位置。
cd /usr/local/nginx/sbin
2. 现在,我们可以通过运行以下命令来启动 Nginx 服务器:
sudo ./nginx
要查看它是否有效,请转到本地主机或您的 URL。
更改默认的 Nginx 监听端口
默认情况下,Nginx 配置为侦听端口 80。如果要更改默认 Nginx 侦听端口,可以通过重新配置位于 /usr/local/nginx/conf下的 nginx.conf文件来实现。
更改默认 Nginx 侦听端口的步骤。
步骤 1:通过运行以下命令打开nginx.conf 文件:
sudo nano /usr/local/nginx/conf
第二步:打开后, nginx.conf文件应该是这样的:
导航到此服务器部分并更改监听 80;端口到任何其他端口号,例如 5555 等。
第 3 步:保存文件并运行打开 localhost,端口为 5555,如下所示。
停止 Nginx 服务器
要停止 Nginx 服务器,我们只需要添加标志-s 来停止Nginx 命令,如下所示。
sudo ./nginx -s stop
这将停止 Nginx 服务器,您可以刷新 localhost 页面并查看。
卸载 Nginx 服务器
要卸载 Nginx,请在具有超级用户权限的终端中运行以下命令,即 sudo :
sudo rm -f -R /usr/local/nginx && rm -f /usr/local/sbin/nginx
这将从您的机器中完全删除 Nginx。在这里,我们使用 rm 命令使用 -f 和 -R 标志删除目录和子目录。 -f 用于删除目录,-R 将递归删除目录中的所有目录。使用&& ,我们可以在一行中编写多个命令。