Nginx安装部署

news/2025/1/13 7:32:37/

Nginx安装部署

nginx的安装与部署都需要一些模块的支持;因此需要提前安装一下Nginx的依赖模块

  • pcre/pcre-devel:这个依赖用于支持nginx的rewrite模块
    • pcre-config –version
  • gcc/gcc-c++:这个依赖主要用于源码编译
    • gcc -v:可以查看版本
  • zlib/zlib-devel:用于压缩
    • cat /usr/lib64/pkgconfig/zlib.pc:查看信息
  • openssl/openssl-devel:主要用于加密

首先安装必要的依赖:

  • 这里需要注明一下:pcre库可以支持rewrite功能
  • gcc是编译器
  • openssl是加密相关
#提前配置好yum源-->我这里使用的就是aliyun的yum源
[root@Test0 ~]# yum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel

第二步骤:准备好nginx-1.16版本的nginx源码包

  • 官方链接:http://nginx.org/download/nginx-1.16.1.tar.gz
  • 可以直接使用wget + 网址下载到本地服务器
    • 地址是:http://nginx.org/download/nginx-0.1.6.tar.gz
      • 注意:地址有可能会失效的,官方地址修改就失效了;
#我这里是直接使用rz准备的nginx源码包
[root@Test0 ~]# cd /usr/local/src/
[root@Test0 src]# ls
[root@Test0 src]# pwd
/usr/local/src
[root@Test0 src]# rz#这里是windows的操作-->选择自己的文件即可
[root@Test0 src]# ls 
nginx-1.16.1.tar.gz#然后在解压nginx的源码包#-->这里是指定了解压的路径#-->然后进入到路径目录-->进行源码编译
[root@Test0 src]# tar -xf nginx-1.16.1.tar.gz 
[root@Test0 src]# cd nginx-1.16.1
[root@Test0 nginx-1.16.1]# 
#一般在网络上是不会暴露自己的nginx版本;因此我们可以直接在源码文件当中直接隐藏nginx的版本号#-->这里后面搭建起来了访问的时候就能够看到
[root@Test0 nginx-1.16.1]# vim src/core/nginx.h 
.........................12 #define nginx_version      101600113 #define NGINX_VERSION      "nginx"			#把1.16.1改为自己喜欢的14 #define NGINX_VER          "LJW/" NGINX_VERSION			#把原来的nginx改为LJW
...............

第三步:源码编译安装nginx

  • 这一步是通常指定了一些nginx的模块功能;
  • 添加一下nginx的启动用户
  • 然后预编译编译安装
#首先可以预先添加一下nginx的用户#-r:指定的是系统用户#-s:指定不能登录的shell--> /sbin/nologin#-M:不创建家目录
[root@Test0 nginx-1.16.1]# useradd  -r -s /sbin/nologin nginx -M#改完之后直接预编译#--prefix=:指定源码安装的目录位置#--user=nginx:指定了启动服务的用户#--group=nginx:指定了用户组 #--with-http_stub_status_module:指定了nginx的状态模块#--with-http_ssl_module:开放加密的模块-->日后制作https做准备
[root@Test0 nginx-1.16.1]# ./configure --prefix=/usr/local/nginx/ --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module#编译、安装#make -->通过gcc编译成我们需要的二进制文件#make install-->把编译的东西都按照预设定的内容移动
[root@Test0 nginx-1.16.1]# make && make install
[root@Test0 nginx-1.16.1]# echo $?
0#到这里为止,其实已经安装完毕

最后就是校验了

  • 启动nginx
    • 检查端口是否开启–>这里默认的就是80端口
  • 检查之前我们源码编译的抬头
    • 上面准备源码包的时候,我们直接修改了源码文件;
    • 因此安装好的时候显示出来的就是我们修改过的
  • 注意自己的防火墙和selinux是否有关闭
    • 防火墙暂时不接触,因此所有试验都最好关闭,
    • 以免影响试验效果
#在启动nginx之前,我们首先做一个软连接#这个步骤是方便我们使用命令#因为源码包安装,命令不会自动添加到PATH路径
[root@Test0 nginx-1.16.1]# cd
[root@Test0 ~]# ln -s /usr/local/nginx/sbin/nginx  /bin/#启动前可以自己检查一下配置文件是否有问题#这个是常用命令-->每一次修改配置文件最好都使用一下#防止修改错了导致nginx启动不来
[root@Test0 ~]# nginx -t 
nginx: the configuration file /usr/local/nginx//conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx//conf/nginx.conf test is successful#nginx的启动命令查看帮助
[root@Test0 ~]# nginx -h
nginx version: LJW/nginx		#这里就是我们之前修改过的源码显示出来了
............#启动nginx
[root@Test0 ~]# nginx
[root@Test0 ~]# ps -ef | grep nginx
root       9494      1  0 17:49 ?        00:00:00 nginx: master process nginx
  • 到这里为止,nginx已经启动成功了
  • 浏览器直接访问:http://192.168.75.30/

在这里插入图片描述
还记得我们之前修改源码文件

  • 在windows的浏览器上–>按F12–>选择到网络–>然后按一个ctrl+r刷新

在这里插入图片描述
到这里为止,Nginx的安装部署已经完成~!


http://www.ppmy.cn/news/35534.html

相关文章

【数据结构篇C++实现】- 栈

文章目录🚀一、栈的原理精讲🚀二、栈的算法实现⛳栈的顺序存储结构🎉(一)顺序栈1.栈的结构体定义2.栈的初始化3.判断空栈4.判断栈满5.元素入栈6.元素出栈7.获取栈顶元素🎉(二)共享栈…

【LeetCode】二叉树的后序遍历(递归,迭代)

目录 题目要求:给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 方法一:递归 方法二:迭代 思路分析: 代码展示: 复杂度分析 方法三:迭代进阶 思路分析: 代码展示&a…

7.网络爬虫—正则表达式详讲

7.网络爬虫—正则表达式详讲与实战Python 正则表达式re.match() 函数re.search方法re.match与re.search的区别re.compile 函数检索和替换检索:替换:findallre.finditerre.split正则表达式模式常见的字符类正则模式正则表达式模式量词正则表达式举例前言&…

【C++进阶】智能指针

文章目录为什么需要智能指针?内存泄漏什么是内存泄漏,内存泄漏的危害内存泄漏分类(了解)如何避免内存泄漏智能指针的使用及原理smart_ptrauto_ptrunique_ptrshared_ptr线程安全的解决循环引用weak_ptr删除器为什么需要智能指针&am…

2020年第十一届C/C++ B组第一场蓝桥杯省赛真题

准备参加第十四届蓝桥杯,今天开始刷题目的第一天,下面是2020年第十一届C/C B组第一场蓝桥杯省赛真题,以下是我的做题目心得。跑步训练第一次写的代码失误点如下:第一个错误点是因为好久没有写代码,忘记判断对才能循环&…

【C语言蓝桥杯每日一题】—— 货物摆放

【C语言蓝桥杯每日一题】—— 货物摆放😎前言🙌排序🙌总结撒花💞😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介…

C 语言网络编程 — 内核协议栈收包/发包流程

目录 文章目录目录关键技术DMAsk_buff 结构体Net driver Rx/Tx Ring BufferBuffer Descriptor TableNAPI 收包机制网卡多队列内核协议栈收包/发包流程概览内核协议栈收包流程详解驱动程序层(数据链路层)VLAN 协议族Linux Bridge 子系统网络协议层&#x…

PWM互补输出,以及死区时间计算

本文基于野火例程进行解说 实验内容 本次实验输出一对互补的pwm波,且进行死区时间的计算说明。 代码 互补输出对应的定时器初始化代码: bsp_advance_tim.c /********************************************************************************* fi…