HCRM博客

如何在CentOS 7上正确配置Nginx服务器?

centos 7 NGINX配置

在互联网的浩瀚海洋里,服务器就像是一座座灯塔,为我们的网络世界照亮前行的路,而 Nginx,作为一款高性能的 HTTP 服务器和反向代理服务器,在 CentOS 7 这个稳定的操作系统上,能发挥出强大的作用,咱就来唠唠 CentOS 7 下 Nginx 的配置,让新手小白也能轻松上手。

如何在CentOS 7上正确配置Nginx服务器?-图1
(图片来源网络,侵权删除)

先问大家一个问题哈,为啥我们要在 CentOS 7 上配置 Nginx 呢?这是因为 CentOS 7 以其稳定性、可靠性和安全性著称,为企业级应用提供了坚实的基础,而 Nginx 呢,它处理高并发的能力简直绝了,能快速响应大量的用户请求,无论是搭建网站、部署应用还是做负载均衡,都表现出色,就好比是一个高效的交通枢纽,有条不紊地疏导着网络流量。

一、安装 Nginx

在开始配置之前,得先把 Nginx 安装在 CentOS 7 上,这就像盖房子得先打地基一样重要,咱可以通过 Yum 包管理器来安装,这可是个方便又高效的工具,打开终端,输入以下命令:

  • sudo yum install epelrelease
  • sudo yum install nginx

看到这里,有的小伙伴可能会问:“为啥要安装 epelrelease 呢?”这是因为 EPEL(Extra Packages for Enterprise Linux)是一个为 RHEL(Red Hat Enterprise Linux)及衍生版本提供的额外软件包库,里面包含了很多有用的软件,Nginx 就是其中之一,安装完 epelrelease 后,就能顺利安装 Nginx 啦。

安装完成后,咱们可以启动 Nginx 服务,让它开始工作,输入命令:

  • sudo systemctl start nginx

再设置开机自启,这样系统重启后 Nginx 也能自动运行:

如何在CentOS 7上正确配置Nginx服务器?-图2
(图片来源网络,侵权删除)
  • sudo systemctl enable nginx

二、配置文件结构

Nginx 的配置文件就像是它的“大脑”,掌控着它的一举一动,主要的配置文件位于/etc/nginx/nginx.conf,这里面定义了一些全局性的设置,比如工作模式、日志路径等,除了这个主文件,还有几个重要的目录和文件需要了解。

/etc/nginx/conf.d/ 这个目录存放的是站点配置文件,每个站点可以有一个独立的配置文件,方便管理和修改,比如说,你要搭建多个网站,就可以在这里分别为它们创建配置文件。

/etc/nginx/default.d/ 目录用于存放默认的站点配置片段,这些片段会被主配置文件或其他站点配置文件引用。

还有一个/usr/share/nginx/html/ 目录,这里面存放的是网站的根目录文件,也就是我们通过浏览器访问网站时显示的内容。

三、配置虚拟主机

如何在CentOS 7上正确配置Nginx服务器?-图3
(图片来源网络,侵权删除)

说到配置虚拟主机,这可是个很实用的功能,啥是虚拟主机呢?就是在一个服务器上可以运行多个网站,就好比你买了一栋大房子,可以把它隔成好几个房间,每个房间都可以住不同的“住户”(网站)。

假设我们要配置两个虚拟主机,一个域名是example1.com,另一个是example2.com,我们可以在/etc/nginx/conf.d/ 目录下创建两个配置文件,分别是example1.com.confexample2.com.conf

example1.com.conf 文件中,内容可能像这样:

  • server {
  • listen 80;
  • server_name example1.com;
  • location / {
  • root /usr/share/nginx/html/example1;
  • index index.html index.htm;
  • }
  • }

这里的listen 80; 表示监听 80 端口,这是 HTTP 服务的默认端口。server_name example1.com; 指定了这个虚拟主机对应的域名。location / 块中,root 指定了网站的根目录,index 指定了默认的首页文件。

同样的道理,在example2.com.conf 文件中进行类似的配置,配置完成后,记得重启 Nginx 使配置生效:

  • sudo systemctl restart nginx

当你在浏览器中输入example1.comexample2.com,就能看到对应网站上的内容啦。

四、配置反向代理

反向代理也是 Nginx 的一个强大功能,它能把客户端的请求转发到后端的服务器上,然后再把后端服务器的响应返回给客户端,这有啥用呢?比如说,你有多个后端服务器处理业务逻辑,通过 Nginx 做反向代理,就可以把请求均匀地分配到这些服务器上,提高系统的处理能力和可靠性。

举个例子,假设我们有两台后端服务器,IP 地址分别是192.168.1.101192.168.1.102,端口都是 8080,我们可以在 Nginx 中这样配置反向代理:

nginx.conf 文件中,添加一个 upstream 块:

  • upstream backend_servers {
  • server 192.168.1.101:8080;
  • server 192.168.1.102:8080;
  • }

然后在server 块中配置代理:

  • server {
  • listen 80;
  • server_name proxy.example.com;
  • location / {
  • proxy_pass http://backend_servers;
  • proxy_set_header Host $host;
  • proxy_set_header XRealIP $remote_addr;
  • }
  • }

这样,当有请求发到proxy.example.com 时,Nginx 就会把请求转发到backend_servers 定义的后端服务器上。

五、配置 SSL 证书

在当今网络安全意识日益增强的时代,给网站配置 SSL 证书是必不可少的,SSL(Secure Sockets Layer)证书能让数据传输在网络中加密,保护用户的隐私和数据安全,就好比给你的网站上了一道“安全锁”。

你需要从权威的证书颁发机构(CA)获取 SSL 证书,这个过程可能需要一些验证和手续,但为了网站的安全,这些都是值得的,拿到证书后,通常是两个文件,一个是证书文件(.crt),一个是私钥文件(.key)。

假设证书文件是example.crt,私钥文件是example.key,我们可以在 Nginx 中这样配置 SSL:

nginx.conf 文件中,修改对应的server 块:

  • server {
  • listen 443 ssl;
  • server_name example.com;
  • ssl_certificate /path/to/example.crt;
  • ssl_certificate_key /path/to/example.key;
  • location / {
  • root /usr/share/nginx/html;
  • index index.html index.htm;
  • }
  • }

这里的listen 443 ssl; 表示监听 443 端口,并启用 SSL 加密。ssl_certificatessl_certificate_key 分别指定了证书文件和私钥文件的路径,配置完成后,重启 Nginx,然后访问网站时,就会看到浏览器地址栏变成了“https”,前面还有一个小锁图标,这就表示 SSL 配置成功啦。

六、优化 Nginx 性能

为了让 Nginx 发挥出最佳性能,我们还可以进行一些优化配置,比如说调整工作进程数,这个数值一般可以根据服务器的 CPU 核心数来设置,如果服务器有 4 核 CPU,我们可以这样设置:

nginx.conf 文件中,找到worker_processes 指令,将其值设置为 4:

  • worker_processes 4;

还可以调整连接数限制,避免过多的连接导致服务器性能下降,比如设置最大连接数为 1024:

  • events {
  • worker_connections 1024;
  • }

开启 gzip 压缩也能提高网站的加载速度,gzip 能对传输的数据进行压缩,减少网络带宽的占用,在nginx.conf 中启用 gzip:

  • http {
  • ...
  • gzip on;
  • gzip_types text/plain application/xml text/css application/javascript;
  • gzip_min_length 1000;
  • ...
  • }

这样,文本类型的数据就会被压缩后再传输给客户端。

CentOS 7 下的 Nginx 配置虽然涉及多个方面,但只要我们一步一步来,理解每个配置项的作用,就能轻松掌握,无论是搭建简单的个人网站,还是构建复杂的企业级应用服务器,Nginx 都能成为我们的得力助手,希望今天的分享能帮助到各位新手小白,让大家在服务器配置的道路上越走越顺。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/27456.html

分享:
扫描分享到社交APP
上一篇
下一篇