centos7编译安装nginx的方法步骤

下面是关于centos7编译安装nginx的详细步骤攻略。

1.安装编译nginx所需的依赖库

在安装nginx之前,需要先安装一些编译nginx的依赖库,具体如下:

yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

这一步是安装编译nginx必备的库文件。

2.下载nginx源码

下载nginx的源码,网址为:http://nginx.org/download/nginx-1.14.2.tar.gz。

可以使用命令行进行下载:

wget http://nginx.org/download/nginx-1.14.2.tar.gz

3.解压源码并进入文件夹

在下载完成后解压源码并进入文件夹:

tar zxvf nginx-1.14.2.tar.gz
cd nginx-1.14.2

4.配置nginx

在进入文件夹后,需要为nginx进行相关的配置,配置文件如下:

./configure \
--prefix=/usr/local/nginx \
--with-stream \
--with-http_v2_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module
  • --prefix:nginx的安装路径,默认为/usr/local/nginx
  • --with-stream:编译nginx的stream模块。
  • --with-http_v2_module:支持http2协议。
  • --with-http_ssl_module:支持ssl协议,即https。
  • --with-http_gzip_static_module:支持静态压缩。
  • --with-http_stub_status_module:支持状态信息查看。

5.编译nginx

完成了配置之后,使用以下命令编译nginx:

make

6.安装nginx

编译完成后,使用以下命令安装nginx:

make install

7.启动nginx

安装完成后,即可使用以下命令启动nginx服务:

/usr/local/nginx/sbin/nginx

需要注意的是,如果查看nginx状态信息,需要在配置文件中打开--with-http_stub_status_module选项,然后使用以下命令:

curl http://127.0.0.1/nginx_status

这样就可以查看到nginx的状态信息了。

另外,如果想要在systemd中启动nginx,需要创建一个nginx.service文件,放在/usr/lib/systemd/system/nginx.service目录下,文件内容如下:

[Unit]
Description=The nginx HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

示例说明

示例1:设置虚拟主机

配置文件路径:/usr/local/nginx/conf/nginx.conf

# 定义http服务
http {
  # 定义http服务下的server
  server {
    # 监听端口80
    listen       80;
    # 域名
    server_name  www.example.com;

    # 设置首页,默认为index.html
    index index.html;

    # 指定虚拟机目录
    root /var/www/html;

    location / {
      # 访问/index.html就会返回/var/www/html文件夹下的index.html文件
      try_files $uri $uri/ /index.html;
    }
  }
}

# 定义stream服务
stream {
  # 定义stream服务下的server
  server {
    # 监听端口9090,只接受TCP连接
    listen 9090;

    # 发送至TCP远程服务127.0.0.1:9000
    proxy_pass 127.0.0.1:9000;

    # 忽略数据包长度限制
    proxy_buffer_size 64k;
    proxy_connect_timeout 1m;
    proxy_timeout 3h;
    proxy_send_timeout 30s;
    proxy_read_timeout 10s;
  }
}

示例2:启用SSL协议

安装过程中已经开启了--with-http_ssl_module选项,启用HTTP服务的SSL协议,只需要在http模块下添加以下内容:

# 定义http服务
http {
  # SSL协议的相关配置信息
  ssl_certificate      /usr/local/nginx/conf/*.pem;
  ssl_certificate_key  /usr/local/nginx/conf/*.key;
  ssl_session_timeout  5m;
  ssl_protocols  TLSv1.2 TLSv1.3;
  ssl_ciphers HIGH:!aNULL:!MD5;
  ssl_prefer_server_ciphers on;

  # 定义http服务下的server
  server {
    # 监听端口443
    listen       443 ssl;
    # 域名
    server_name  www.example.com;

    # 设置首页,默认为index.html
    index index.html;

    # 指定虚拟机目录
    root /var/www/html;

    location / {
      # 访问/index.html就会返回/var/www/html文件夹下的index.html文件
      try_files $uri $uri/ /index.html;
    }
  }
}

这样就启用了HTTP服务的SSL协议。需要先获得SSL证书,具体可以参照其他文章中“如何生成SSL证书”的内容。

以上就是centos7编译安装nginx的详细步骤攻略,希望可以帮到你,谢谢!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:centos7编译安装nginx的方法步骤 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Linux环境下安装nginx

    大家好,本篇文章主要讲的是Linux环境下安装nginx教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览 1、安装所需环境 //安装gcc yum install gcc-c++ //安装PCRE pcre-devel yum install -y pcre pcre-devel //安装zlib yum install -y zl…

    Nginx 2023年4月13日
    00
  • Nginx配置详解(推荐)

    以下是“Nginx配置详解(推荐)”的完整攻略,包含两条示例说明。 Nginx配置详解(推荐) Nginx是一个高性能的Web服务器,用于提供静态内容、反向代理、负载均衡等。在使用Nginx时,需要进行一定的配置才能满足自己的需求。下面是一些常用的Nginx配置示例。 示例一:反向代理 反向代理是一种常见的Nginx使用场景,可以用于负载均衡、实现动态网站等…

    Nginx 2023年5月16日
    00
  • nginx安装第三方模块的方法

      nginx第三方模块安装方法:   ./configure –prefix=/你的安装目录 –add-module=/第三方模块目录 以安装fair模块实例 下载fair安装包并解压     1、在未安装nginx的情况下安装nginx第三方模块 # ./configure –prefix=/usr/local/nginx-1.9.9 –add-…

    Nginx 2023年4月10日
    00
  • Laradock中Laravel Octane与WebSocket的nginx怎么配置

    今天小编给大家分享一下Laradock中Laravel Octane与WebSocket的nginx怎么配置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。 前情描述 在laradock中安装好Laravel Octane后swoole启动,在n…

    Nginx 2023年4月10日
    00
  • WCF nginx反向代理遇到的问题

    正常配置了nginx反向代理,其他java站点什么的都正常,就wcf总是失败。始终会跑如下异常: 由于 AddressFilter 在 EndpointDispatcher 不匹配,To 为“http://testst.lenovo.com/Services/UserManagementService.svc”的消息无法在接收方处理。请检查发送方和接收方的 …

    Nginx 2023年4月11日
    00
  • 面试的加分项:懂点 Nginx 反向代理与负载均衡

        学到老活到老 前端圈一直很新,一直要不停的学习,而且在进入大厂的路上,还要求熟悉一门后台语言等等。用一句别人开玩笑的话来说,java十年前的技术现在还能用,而前端的技术就不是这样的了 突然想起了deno项目发布的时候,一个搞笑的issue,“求别更新了,老子学不动了”。虽然看起来是一个玩笑的issue,但却道出了前端们不得不表现出来的疲态,知识点越来…

    Nginx 2023年4月10日
    00
  • 3.Nginx常用功能介绍

    Nginx常用功能介绍 Nginx反向代理应用实例     反向代理(Reverse Proxy)方式是指通过代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并且从内部网络服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一台服务器。当一台代理服务器能够代理外部网络上的访问请求来访问内部网…

    Nginx 2023年4月11日
    00
  • Nginx基础02:配置文件nginx.conf(Part1)

    我们使用Nginx主要是通过其配置文件nginx.conf来实现的。按照一定的规则,编写特定的指令,可以帮助我们实现对Web服务的控制!所以,学习Nginx的用法,几乎就是学习nginx.conf! 如何使用本篇文章 本文作为一篇高度总结和罗列nginx.conf中所有的基础配置项,循规蹈矩地按照文章的顺序阅读的方式不可取 笔者建议所有读者,先看目录,掌握N…

    2023年4月10日
    00
合作推广
合作推广
分享本页
返回顶部