2023最新!nginx安装配置保姆级教程

2023最新!nginx安装配置保姆级教程

这篇文章了参考了这位的教程:https://blog.csdn.net/qq_36838700/article/details/129971765

导航

文章目录

一、nginx下载

  1. nginx官网:http://nginx.org

  2. 需要的安装包

    ### 这些安装包是在你离线没有网络的情况下安装的
    pcre-8.37.tar.gz          rewrite正则相关pcre:URL重写软件,实现伪静态\URL跳转等、SEO优化。
    
    openssl-1.0.1t.tar.gz     https加密访问用它
    
    zlib-1.2.8.tar.gz         提供数据压缩用
    
    nginx-1.12.2.tar.gz
    链接:https://pan.baidu.com/s/1QycvWTuVIGXqL7zDakMOJQ?pwd=ky2z 
    提取码:ky2z
    

    二、编译安装nginx

    下面的操作需要在Linux上执行,还没有安装Linux的话,可以参考我的博客安装centos7的教程
    1.

    安装pcre

    • 联网下载pcre
      • mkdir -p /opt/tools:创建目录
      • cd /opt/tools:切换到该路径
      • wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz
        • 如果没找到wget 命令 则执行 yum install -y wget即可随后重新执行上面的wget命令下载,
      • 下载中
    • 解压压缩文件
      • tar -zxvf pcre-8.37.tar.gz
      • cd pcre-8.37
      • ./configure:成一个适合当前系统的 Makefile 文件
        • 要是提示缺少C++的支持,可以使用yum -y install gcc-c++来安装C++
      • make:当你已经使用 ./configure 命令生成了 Makefile 文件后,可以使用 make 命令执行编译过程
      • make install:当你使用 make 命令成功编译了一个软件包后,可以使用 make install 命令将编译得到的可执行文件、库文件和其他必要的资源文件复制到系统指定的位置,以完成软件的安装过程。

    安装openssl、zlib、gcc依赖

    • yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

           configure参数作用
           nginx -V     查看安装的参数及模块
           参数作用:
           --prefix=PATH  路径   如果不指定nginx默认安装位置在 /usr/local
           --user=USER    用户
           --group=GROUP  组
           --with-pcre    伪静态
           --with-http_stub_status_module 状态
           --with-http_ssl_module      加密 443
           
           
           例如
           ./configure  --user=www --group=www --prefix=/application/nginx-1.12.2/ --with-http_stub_status_module  --with-http_ssl_module --with-pcre 
           ### 这不需要执行
    

    安装nginx

    • 联网下载nginx
      • cd /opt/tools
      • wget http://nginx.org/download/nginx-1.12.2.tar.gz
    • 解压文件
      • tar -zxvf nginx-1.12.2.tar.gz
      • cd nginx-1.12.2
      • 和上面一样,使用 ./configure 生成makefire文件,然后执行 make进行编译,最后 make install进行按安装0
    • 启动nginx
      • cd /usr/local/nginx/sbin
      • ./nginx
    1. 访问nginx

      • 用Windows系统去访问Linux下的nginx的话,默认是不能访问的,因为防火墙拦截了,需要关闭防火墙或者开房访问的端口号,80端口
      • 查看开放的端口号 firewall-cmd --list-all
      • 设置开放的服务或端口号
        • firewall-cmd --add-service=http --permanent
          • 在 Linux 系统中,防火墙用于保护计算机免受来自网络的攻击和恶意访问。firewall-cmd 命令是 Red Hat 系列发行版中默认使用的防火墙工具,它可以用于配置和管理防火墙规则。
          • --add-service=http 参数表示将 HTTP 服务添加到防火墙规则中。这个参数会自动配置所有必要的端口和协议,以便允许来自网络的 HTTP 请求通过防火墙。如果需要添加其他服务,可以将 http 替换为对应的服务名称,比如 ftpssh 等。
          • --permanent 参数表示将更改永久保存到防火墙规则中,即使系统重启后也能生效。如果省略这个参数,则更改只会在当前会话中生效,系统重启后会被清除。
          • 因此,运行 firewall-cmd --add-service=http --permanent 命令后,HTTP 服务将被添加到防火墙规则中,并且这个更改会永久保存在防火墙规则中。
        • firewall-cmd --add-port=80/tcp --permanent
          • 在这个命令中,--add-port=80/tcp 参数表示将端口号 80 的 TCP 流量添加到防火墙规则中。这将允许来自网络的 TCP 流量通过防火墙,并传递到本地计算机上的端口 80。
          • --permanent 参数表示将更改永久保存到防火墙规则中,即使系统重启后也能生效。如果省略这个参数,则更改只会在当前会话中生效,系统重启后会被清除。
          • 因此,运行 firewall-cmd --add-port=80/tcp --permanent 命令后,端口号 80 的 TCP 流量将被添加到防火墙规则中,并且这个更改会永久保存在防火墙规则中。这样可以允许外部访问你的计算机上运行的使用端口 80 的服务,比如 Web 服务器。
      • 重启防火墙
        • firewall-cmd --reload
        • 再次查看:firewall-cmd --list-all
      • 访问
        • 在Linux终端输入 ifconfig,查询到ens33的IP地址,打开浏览器,输入 IP地址:80,如果弹出nginx的网页这说明防火墙设置成功

二、拓展

  1. 配置环境变量PATH,加入nginx命令路径
    • vim /etc/profile增加:export PATH="/usr/local/nginx/sbin: /:$PATH"
    • 输入 source /etc/profile
      • 在 Linux 系统中,/etc/profile 是一个系统范围的配置文件,其中包含了一些全局的环境变量和系统级别的设置。这个文件通常用于设置系统范围的环境变量、添加系统级别的路径、定义全局的别名等。
      • 通过运行 source /etc/profile 命令,你可以立即加载并应用/etc/profile 中的配置更改,而不需要重新启动系统。这样,你就可以立即使用新的环境变量和系统级别的设置,而无需关闭当前终端会话。
      • 需要注意的是,source 命令是 Bash shell 的内置命令,它会在当前 shell 环境中加载并执行指定的脚本文件(这里指的是 /etc/profile 文件)。因此,该命令只会影响当前的 shell 会话,对其他 shell 会话没有影响。
      • 总之,运行 source /etc/profile 命令可以立即加载系统级别的环境变量和配置文件,使其在当前 shell 会话中生效
    • 现在可以输入nginx -v就有对应的结果了
相关推荐
彩虹糖_haha15 分钟前
Linux高并发服务器开发 第五天(压缩解压缩/vim编辑器/查找替换/分屏操作/vim的配置)
linux·运维·服务器
旺仔学IT15 分钟前
Centos7中使用yum命令时候报错 “Could not resolve host: mirrorlist.centos.org; 未知的错误“
linux·运维·centos
qq_433618441 小时前
shell 编程(五)
linux·运维·服务器
VVVVWeiYee2 小时前
项目2路由交换
运维·服务器·网络·网络协议·信息与通信
denglei.3 小时前
在Nginx部署Web应用,如何保障后端API的安全
nginx·安全
lifeng43213 小时前
Jenkins集成部署(图文教程、超级详细)
运维·jenkins
白手小弟3 小时前
python wxauto库实现微信自动化发送信息、回复、添加好友等
运维·自动化
ii_best3 小时前
ios按键精灵自动化的脚本教程:自动点赞功能的实现
运维·ios·自动化
3DVisionary3 小时前
数字图像相关DIC技术用于机械臂自动化焊接全场变形测量
运维·数码相机·自动化·焊接变形实验·数字图像相关dic技术·自动化焊接全场变形测量·非接触高精度环境适应性全场测量
IT机器猫4 小时前
Docker完整技术汇总
运维·docker·容器