centos7编译安装nginx的方法步骤

yizhihongxing

下面是关于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日

相关文章

  • nginx监听端口转发到后端改变的问题

    nginx配置: server {     listen 80;     server_name localhost;     location / {         proxy_pass http://192.168.1.100:8080;         proxy_set_header Host $host;         proxy_set_he…

    Nginx 2023年4月10日
    00
  • Nginx关闭危险的HTTP请求

    在 server { listen 80; server_name 127.0.0.1 www.baidu.com; 下一行添加一下代码即可关闭除GET|POST|HEAD外的请求方式。 if ($request_method !~* GET|POST|HEAD) { return 403; }  

    Nginx 2023年4月16日
    00
  • nginx反向代理进行yum配置的步骤详解

    当服务器网络环境不允许直接访问互联网,我们可以使用NGINX反向代理来为服务器提供访问外网的方式。这时候,如果我们需要在服务器上安装新的软件时就需要进行YUM配置。本文将会详细介绍如何使用NGINX反向代理进行YUM配置,包括如何安装NGINX、修改YUM配置文件和设置NGINX反向代理。 安装NGINX 第一步,我们需要安装NGINX,你可以在官网上下载对…

    Nginx 2023年5月16日
    00
  • fedora 安装nginx+php+mysql

    环境 fedora 最新版 20 参考:http://www.cnblogs.com/beceo/archive/2012/08/21/2648378.html -----------------------------------------------------」 以下是ROOT权限执行yum install mysql mysql-server因开源…

    Nginx 2023年4月11日
    00
  • Centos7.x下Nginx安装及SSL配置与常用命令详解

    CentOS 7.x下Nginx安装及SSL配置与常用命令详解完整攻略主要包含以下几个步骤: 安装Nginx 配置SSL证书 配置Nginx支持SSL 常用命令详解 1. 安装Nginx 在CentOS中,通过yum可以很方便的安装Nginx,步骤如下: sudo yum install epel-release sudo yum install nginx…

    Nginx 2023年5月16日
    00
  • centos7 nginx安装及自启动

    本文章为转载:https://blog.csdn.net/lisheninasiainfo/article/details/53576038   下载 nginx的rpm包 wget  http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.…

    Nginx 2023年4月13日
    00
  • nginx离线安装,反向代理,负载均衡

    centos7离线安装Nginx、nginx反向代理、nginx负载均衡 下载所需rmp包(包中有所有rpm) 安装 gcc  PCRE pcre-devel   zlib   OpenSSL   直接下载.tar.gz安装包,地址:https://nginx.org/en/download.html(文件在包中)   cd /usr/local/ mkdi…

    Nginx 2023年4月12日
    00
  • Nginx反向代理入门实战指南

    以下是关于“Nginx反向代理入门实战指南”的完整攻略: 概述 本文以数字资产交易所为实际场景,介绍了 Nginx 反向代理的应用,并深入探讨了反向代理的原理和实现。 反向代理的原理 反向代理是一种通过代理服务器来向客户端提供服务的方法,它与正向代理的主要区别在于代理的对象。反向代理将客户端请求转发到后端服务器上,然后将响应返回给客户端,客户端并不知道后端服…

    Nginx 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部