Nginx于2004年10月首次发布。Nginx是一个免费的开源网络服务器,可以用于反向代理、缓存、视频流、电子邮件代理和负载平衡。开发者的目标是设计一个能提供最大性能和稳定性的网络服务器。它最初被设想为解决C10k问题的软件。
对于互联网上最繁忙的网站,Nginx优化了内容和应用程序的交付,提高了安全性,并促进了可用性和可扩展性。它也是为你的静态网站文件或由静态网站生成器生成的文件提供服务的理想网络服务器。在这篇文章中,我们将建立一个服务器,并向你展示如何用Nginx提供index.html文件。让我们开始吧!
如何在CentOS中安装Nginx
如果你没有Nginx,那么首先按照给定的程序在系统中安装它。
第一步,按 "CTRL+ALT+T"打开CentOS 终端,然后写出下面的命令。
$ sudo yum install nginx



无错误的输出宣告Nginx已经成功安装在你的系统上。
如何在CentOS中启用Nginx
现在,利用下面给出的命令,在CentOS系统上启用Nginx。
$ sudo systemctl enable nginx

之后,启动Nginx服务。
$ sudo systemctl start nginx

如何在CentOS中为Nginx设置防火墙规则
接下来,我们要做的是设置防火墙,允许Nginx的外部连接,默认运行在80端口。firewall-cmd是用来管理永久和运行中的Firewalld配置的命令。
为了永久启用80端口的HTTP连接,请在CentOS终端写出下面的命令。
$ sudo firewall-cmd --permanent -add-service=http

为了验证HTTP防火墙服务是否被正确地添加到系统中,请执行此命令。
$ sudo firewall-cmd --permanent --list-all

现在,重新加载防火墙服务。
$ sudo firewall-cmd --reload

全部完成!
如何用Nginx服务index.html文件
为了遵循服务HTML文件的程序,我们将使用 "mkdir"命令创建一个 "www"目录。mkdir"命令在基于Linux的系统中使用,如CentOS,用于创建一个或多个目录。
在你的终端执行下面的命令,在当前工作目录中创建一个 "www"。
$ sudo mkdir www

接下来,我们在 "www "目录下创建一个样本 "index.html "文件。
$ sudo nano ~/www/index.html

根据你的要求,在 "index.html"中添加任何东西。然而,我们将在我们的 "**index.**html "文件中添加以下测试内容。
<!doctype html>
<html>
<head>
<title>Serving index.html with Nginx</title>
</head>
<body>
<h1>How do I serve index.html with Nginx </h1>
<p>Nginx is a freely available open-source web server that can be reverse proxy, load balancing.</p>
</body>
</html>

现在,按 "CTRL+O"来保存我们在 "www"目录下的 "index.html"文件中添加的内容。

之后,我们将使用 "chmod"命令改变 "www"目录的权限。chmod是 "改变模式"的意思,是Linux用户用来改变文件权限的一个命令。
在下面给定的命令中,我们将尝试给每个要使用 "www"目录的人分配读、写和执行的权限。
$ sudo chmod 0755 ~/www

现在,用nano编辑器打开Nginx的配置文件"/etc/nginx/nginx.conf"。
$ sudo nano /etc/nginx/nginx.conf

"/etc/nginx/nginx.conf"文件中有不同的块,如http、服务器和Nginx配置的位置 。在该文件中寻找以下一行。
include /etc/nginx/sites-enabled/*;
上面这一行声明,存在于 "site-available"中的配置文件被认为是Nginx配置的一部分。

现在,在Nginx的配置文件中添加以下服务器块。
server {
listen 80;
server_name test.sharqa.com;
root /home/linuxhint/www;
index index.html;
}
这个服务器块规定,对于所有的连接,Nginx将监听端口 "80",我们的服务器名称是 "test.sharqa.com",用Nginx提供的索引文件是 "index.html"文件,所有与服务器有关的文件都在"/home/linuxhint/www"目录下。

按 "CTRL+O"键,将我们所做的修改保存到打开的文件中。

用"-t"选项执行 "nginx"命令,测试配置文件及其语法。
$ sudo nginx -t

现在,重新启动系统中的Nginx服务。
$ sudo systemctl restart nginx

重启Nginx 服务后,访问你在 "server_name"中添加的域名。这样做的结果是,你的index.html网页将被提供。

结论
Nginx 被设计为提供出色的网络服务器性能,特别是当有许多同时连接或静态内容需要处理时。这就是为什么它对服务静态文件进行了高度优化。在这篇文章中,你已经看到了Nginx的安装方法,以及我是如何用Nginx在我的系统上提供index.html的。