Linux安装nginx保姆级教程

前言

Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。

一、nginx安装(保姆级教程)

1.安装nginx依赖

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

2.安装wget

yum -y install wget

在这里插入图片描述

3.创建nginx安装目录

  • /usr/local/目录下创建nginx文件夹

    mkdir /usr/local/nginx
    
  • 切换到/usr/local/nginx/目录

cd /usr/local/nginx/

4.下载nginx

wget https://nginx.org/download/nginx-1.8.0.tar.gz

在这里插入图片描述

5.查看下载好的nginx

在这里插入图片描述

6.解压缩

tar -xvf nginx-1.8.0.tar.gz

7.查看当前目录下的文件→进入nginx-1.8.0目录→查看当前目录下的文件

在这里插入图片描述

8.安装nginx

  • 配置nginx(考虑到后续安装ssl证书 添加两个模块)

    --with-http_stub_status_module:用来监控 Nginx 的当前状态

    --with-http_ssl_module:使用https协议模块。默认情况下,该模块没有被构建。前提是openssl与openssl-devel已安装

    ./configure --with-http_stub_status_module --with-http_ssl_module
    

    在这里插入图片描述

  • 编译

    make
    
  • 安装

    make install
    

    在这里插入图片描述

9.查看nginx安装目录并启动nginx

  • 查看nginx安装目录

    whereis nginx
    
  • 切换到 /usr/local/nginx/sbin目录

    cd /usr/local/nginx/sbin
    
  • 启动ngin

    ./nginx
    

在这里插入图片描述

10.网络请求测试nginx是否正常

curl http://localhost:80

在这里插入图片描述

二、外部电脑访问nginx设置

方法一:关闭防火墙

systemctl stop firewalld

在这里插入图片描述

在这里插入图片描述

方法二:添加防火墙端口(nginx默认端口:80,如果修改了nginx端口,添加端口的时候要注意对应)

  • 添加防火墙端口

    firewall-cmd --zone=public --add-port=80/tcp --permanent
    

    在这里插入图片描述

  • 重新载入(使修改的操作生效)

    firewall-cmd --reload
    

    在这里插入图片描述
    在这里插入图片描述

三、常用编译选项说明

nginx大部分常用模块,编译时./configure –help以–without开头的都默认安装。

  • --prefix=PATH:指定nginx的安装目录。默认 /usr/local/nginx
  • --conf-path=PATH:设置nginx.conf配置文件的路径。nginx允许使用不同的配置文件启动,通过命令行中的-c选项。默认为prefix/conf/nginx.conf
  • --user=name:设置nginx工作进程的用户。安装完成后,可以随时在nginx.conf配置文件更改user指令。默认的用户名是nobody。–group=name类似
  • --with-pcre:设置PCRE库的源码路径,如果已通过yum方式安装,使用–with-pcre自动找到库文件。使用–with-pcre=PATH时,需要从PCRE网站下载pcre库的源码(版本4.4 – 8.30)并解压,剩下的就交给Nginx的./configure和make来完成。perl正则表达式使用在location指令和 ngx_http_rewrite_module模块中。
  • --with-zlib=PATH:指定 zlib(版本1.1.3 – 1.2.5)的源码解压目录。在默认就启用的网络传输压缩模块ngx_http_gzip_module时需要使用zlib 。
  • --with-http_ssl_module:使用https协议模块。默认情况下,该模块没有被构建。前提是openssl与openssl-devel已安装
  • --with-http_stub_status_module:用来监控 Nginx 的当前状态
  • --with-http_realip_module:通过这个模块允许我们改变客户端请求头中客户端IP地址值(例如X-Real-IP 或 X-Forwarded-For),意义在于能够使得后台服务器记录原始客户端的IP地址
  • --add-module=PATH:添加第三方外部模块,如nginx-sticky-module-ng或缓存模块。每次添加新的模块都要重新编译(Tengine可以在新加入module时无需重新编译)

四、nginx相关操作命令

1.查看nginx进程

  • 查看nginx进程是否启动

    ps -ef | grep nginx
    

    在这里插入图片描述

2.nginx启动、停止、重启命令、查看安装目录

  • 查看nginx安装目录

    whereis nginx
    
  • 进入nginx安装目录的sbin目录

    cd /usr/local/nginx/sbin/
    

    在这里插入图片描述

  • 启动nginx

    ./nginx
    
  • 关闭nginx

    ./nginx -s stop
    
  • 重启nginx

    ./nginx -s reload
    

3.nginx.conf配置文件

Nginx配置文件主要分成四部分:main(全局设置)、server(主机设置)、upstream(上游服务器设置,主要为反向代理、负载均衡相关配置)和 location(URL匹配特定位置后的设置),每部分包含若干个指令。main部分设置的指令将影响其它所有部分的设置;server部分的指令主要用于指定虚拟主机域名、IP和端口;upstream的指令用于设置一系列的后端服务器,设置反向代理及后端服务器的负载均衡;location部分用于匹配网页位置(比如,根目录"/“,”/images",等等)。他们之间的关系式:server继承main,location继承server;upstream既不会继承指令也不会被继承。它有自己的特殊指令,不需要在其他地方的应用。

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-02 15:32:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-02 15:32:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-02 15:32:06       82 阅读
  4. Python语言-面向对象

    2024-04-02 15:32:06       91 阅读

热门阅读

  1. js判断对象是否为空的几种方法

    2024-04-02 15:32:06       40 阅读
  2. JVM基础

    JVM基础

    2024-04-02 15:32:06      42 阅读
  3. 【C/C++】C语言实现单链表

    2024-04-02 15:32:06       35 阅读
  4. Vue 中的修饰符

    2024-04-02 15:32:06       35 阅读
  5. Vue3:使用Pinia存储、读取、修改数据

    2024-04-02 15:32:06       39 阅读
  6. 算法3:查找算法

    2024-04-02 15:32:06       40 阅读
  7. 每日一题 日期统计

    2024-04-02 15:32:06       38 阅读
  8. COMP2017 9017 Assignment 2

    2024-04-02 15:32:06       32 阅读
  9. RAM IP核

    RAM IP核

    2024-04-02 15:32:06      44 阅读
  10. 1-31 正则表达式 String Buffer String Builder

    2024-04-02 15:32:06       39 阅读