nginx--安装

news2024/12/24 2:28:21

yum安装

官方包链接:nginx: Linux packages

官方yum源链接:nginx: Linux packages

配置yum源

[root@localhost ~]# yum install -y nginx 
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
              

列出所有版本

yum list nginx --showduplicates

 查看版本信息

yum info nginx

安装

yum install -y nginx 

查看nginx安装包信息

 rpm -q nginx
 rpm -qi nginx

 nginx配置文件

rpm -ql nginx
rpm -qc nginx

 

启动nginx

systemctl enable --now nginx

注意:若是出现Failed to start nginx - high performance web server

可能是80端口被占用

lsof -i:80

 杀死进程

kill -9 pid

 查看其他进程

 systemctl status nginx

pstree -p

查看版本

 访问网站

 查看nginx权限用户

ps aux | grep nginx

 修改权限用户

systemctl stop nginx
systenctl status nginx
vim +5 /etc/nginx/nginx.conf
#user nginx;

nginx -g "user stu;"
!ps

 nginx的参数

帮助: -? -h
使用指定的配置文件: -c
指定配置指令:-g
指定运行目录:-p
测试配置文件是否有语法错误:-t -T
打印nginx的版本信息、编译信息等:-v -V
发送信号: -s 示例: nginx -s reload

立刻停止服务:stop,相当于信号SIGTERM,SIGINT
优雅的停止服务:quit,相当于信号SIGQUIT
平滑重启,重新加载配置文件: reload,相当于信号SIGHUP
重新开始记录日志文件:reopen,相当于信号SIGUSR1,在切割日志时用途较大
平滑升级可执行程序:发送信号SIGUSR2,在升级版本时使用
优雅的停止工作进程:发送信号SIGWINCH,在升级版本时使用

nginx运行方式

运行:nginx
关闭:nginx -s stop
运行: systemctl start nginx
关闭:systemctl stop nginx
前台运行:nginx  -g "daemon off;"
关闭:Ctrl + z

服务文件

cat /usr/lib/systemd/system/nginx.service

 pid文件

cat /run/nginx.pid

编译安装

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

创建nginx的权限用户

useradd -s /sbin/nologin nginx

安装包

cd /usr/local/src/
wget https://nginx.org/download/nginx-1.20.2.tar.gz
tar -zxvf nginx-1.20.2.tar.gz 

 

auto:用于编译时的文件,以及相关lib库,编译时对对操作系统的判断等,都是为了辅助./configure命令执行的辅助文件。
conf:存放 Nginx 服务器配置文件
configure:命令,用于对即将安装的软件的配置,完成 makefile 编译文件的生成
contrib:存放由其他机构贡献的文档材料
html:存放 Nginx 欢迎页面
man:nginx命令的帮助文档,linux上可以使用man命令查看帮助
src:存放 Nginx 源码

编译安装

生成makefile

./configure --prefix=/apps/nginx \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--with-stream_ssl_module \
--with-stream_realip_module

编译

make

make install 
ls /apps/nginx 

conf:保存nginx所有的配置文件,其中nginx.conf是nginx服务器的最核心最主要的配置文件,其他的.conf则是用来配置nginx相关的功能的,例如fastcgi功能使用的是fastcgi.conf和
fastcgi_params两个文件,配置文件一般都有个样板配置文件,是文件名.default结尾,使用的使用将其复制为并将default去掉即可。
html:目录中保存了nginx服务器的web文件,但是可以更改为其他目录保存web文件,另外还有一个50x的web文件是默认的错误页面提示页面。
logs:用来保存nginx服务器的访问日志错误日志等日志,logs目录可以放在其他路径,比
如/var/logs/nginx里面。
sbin:保存nginx二进制启动脚本,可以接受不同的参数以实现不同的功能。 

 创建软连接

ln -s /apps/nginx/sbin/nginx /usr/sbin/

修改所用者

chown -R nginx.nginx /apps/nginx

 访问

 配置service文件

cat /usr /lib/systemd/system/nginx.service

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

[Service]
Type=forking
PIDFile=/run/nginx.pid
# Nginx will fail to start if /run/nginx.pid already exists but has the wrong
# SELinux context. This might happen when running `nginx -t` from the cmdline.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268621
ExecStartPre=/usr/bin/rm -f /run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
KillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=mixed
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 修改run/nginx.pid

find / -name nginx.pid
cd /apps/nginx
mkdir run
cp logs/nginx.pid  run/
chown -R nginx.nginx /apps/nginx/run/nginx.pid 

 

 vim /apps/nginx/conf/nginx.conf

 

加载启动

加载:systemctl daemon-reload
启动: systemctl start nginx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1633199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【论文阅读】ELAN-Efficient Long-Range Attention Network for Image Super-resolution

ELAN-Efficient Long-Range Attention Network for Image Super-resolution 论文地址简介1 引言2相关工作2.1 基于 CNN 的 SR 方法2.2 基于 Transformer 的 SR 方法 3 方法论3.1 ELAN 的整体流程3.2 Efficient Long-range Attention Block (ELAB) 4实验4.1实验设置4.2 与轻量级…

从注册到订阅,Midjourney使用指南,你想知道的都有

Midjourney简介 Midjourney官网:https://www.midjourney.com/home 是一个独立的研究实验室,专注于探索新的思维方式和扩展人类的想象力。它由一个小型的自筹资金团队组成,该团队专注于设计、人类基础设施和人工智能。Midjourney拥有11名全职…

ipad的文件如何传到手机里 iPad较大文件怎么发送出去 iMazing下载教程

在现代生活中,随着移动设备的普及和多样化,我们经常需要在不同设备之间传输文件,以便在工作、学习或娱乐中更加便捷地使用这些文件。iPad和iPhone是用户广泛使用的设备,我们时常使用它们来存储和访问大量的个人数据。但有时&#…

安装 AngularJS

安装 AngularJS 文章目录 安装 AngularJS1. 使用在线 cdn2. 使用依赖管理工具 npm 1. 使用在线 cdn <!-- 1. 引入在线地址 --> <script src"http://code.angularjs.org/1.2.25/angular.min.js"></script><!-- 2. 下载到本地&#xff0c;引入文…

Apache Seata基于改良版雪花算法的分布式UUID生成器分析2

title: 关于新版雪花算法的答疑 author: selfishlover keywords: [Seata, snowflake, UUID, page split] date: 2021/06/21 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 关于新版雪花算法的答疑 在上一篇关于新版雪花算法的解析中…

Django框架视图基础

本节主要介绍Django框架视图的基础知识。Django视图层是负责处理请求的核心&#xff0c;是开发Web应用的重要组成部分。Django视图层代码可以放在应用目录下的任何位置&#xff0c;通常写在类似views.py这样的文件中。 在Django框架视图层的概念体系中&#xff0c;视图函数简称…

探索项目管理系统:解析五大功能,洞悉项目成功的关键

项目管理新手往往喜欢埋头苦干&#xff0c;殊不知优秀的项目经理已经熟练运用项目管理系统&#xff0c;让项目规划条理清晰。项目管理系统具备的功能&#xff0c;好用的项目管理系统都有这5大功能。分别是项目WBS分解、项目图表和报表、工时管理、团队协作、任务流程自动化。 一…

react报错:Warning: Each child in a list should have a unique “key“ prop.

我是万万没想到的&#xff0c;使用Popconfirm不添加key属性也会报错&#xff1a; react-refresh:160Warning: Each child in a list should have a unique "key" prop. Check the render method of Cell. Seehttps://reactjs.org/link/warning-keys for more informa…

每日论文推荐:LLaMA3的低比特量化效果详细总结

&#x1f4cc; 元数据概览&#xff1a; 标题&#xff1a;这篇论文的标题是“How Good Are Low-bit Quantized LLAMA3 Models? An Empirical Study”&#xff0c;它可能探讨的是低比特权量化技术在LLAMA3模型上的应用效果和性能。作者&#xff1a;论文的作者包括来自香港大学、…

接字符串注入攻击简介

连接字符串注入攻击简介 什么是连接字符串注入攻击&#xff1f; 连接字符串注入攻击是一种安全攻击类型&#xff0c;攻击者通过修改应用程序使用的数据库连接字符串来注入恶意内容。连接字符串是包含数据库连接所需数据&#xff08;如服务器地址、数据库名、用户名和密码等&a…

升级价值主张 用友帮企业找到乘风破浪的“密码”

近期&#xff0c;用友发布了其战略级产品用友BIP的全新价值主张&#xff0c;将其从原来的“企业数智化 用友BIP”升级为“用友BIP 成就数智企业”。用友这次价值主张升级看似变动不大&#xff0c;实则大有深意。 顺势而为的主动升级 从当前数智化发展的形势来看&#xff0c;各…

c语言从入门到函数速成(1)

温馨提醒&#xff1a;本篇文章适合人群&#xff1a;刚学c又感觉那个地方不怎么懂的同学以及以及学了一些因为自身原因停学一段时间后又继续学c的同学 好&#xff0c;正片开始。 主函数 学c时最先学的是我们c语言程序的主体函数&#xff0c;c的主函数有两种写法&#xff0c;这…

Leetcode | 以二叉树,多叉树为主题的理论,真题以及图解【更新中】

1.理论 1.1.二叉树 1.1.1.二叉树的遍历 前序(preorder traversal)&#xff1a;从根节点开始&#xff0c;先访问当前节点&#xff0c;然后递归地遍历左子树&#xff0c;最后递归地遍历右子树。即“根-左-右”的顺序。 中序遍历(inorder traversal)&#xff1a;从根节点开始&…

mysql面试题九(SQL优化)

目录 1.一条 SQL 是如何执行的 2.索引失效的几种情况 3.EXPLAIN 4.Where 子句如何优化 5.超大分页或深度分页如何处理 6.大表查询如何优化 7.分库分表 基本概念 分库分表方法 水平拆分 垂直拆分 分库分表后的注意事项 1.一条 SQL 是如何执行的 在MySQL中&#xff0…

C++|STL简介-string-vector基础运用

目录 什么是STL STL里面有什么 容器 string 序列式容器 vector deque list 关联式容器 set multiset map multimap 算法 非可变序列算法 可变序列算法 排序算法 数值算法 什么是STL STL(标准模板库)&#xff1a;是C标准库的重要组成部分&#xff0c;不仅是一…

不完全微分PD控制器(CODESYS源代码+算法详细介绍)

完全微分计算公式为Kp*Td/Ts(e(k)-e(k-1))。有关位置式PID和增量式PID更多相关内容,大家可以参考下面的文章链接: 1、CODESYS位置式PID CODESYS位置式PID(完整ST源代码)_codesys pid功能块-CSDN博客文章浏览阅读1.1k次,点赞2次,收藏2次。CODESYS增量式PID完整源代码请参看…

红极一时的VB,输给时代,新型开发工具,或成未来

若要称VB为非专业人员改造自身行业的得力工具&#xff0c;这绝不夸张。 对于众多编程语言而言&#xff0c;单纯学习语言本身往往应用有限&#xff0c;比如C和Qt虽有关联却各自独立&#xff0c;但VB却独树一帜&#xff0c;它的实用性远超常规编程语言。 在软件开发的历史长河中…

【go零基础】go-zero从零基础学习到实战教程 - 1项目表设计

既然是0基础&#xff0c;现在来写下设计思路&#xff0c;因为go-zero是个微服务架构&#xff0c;所以&#xff0c;哪怕是0基础&#xff0c;也从两个服务模块开始写起。 我们的目标是&#xff1a;最小可用微服务架构最佳实践&#xff01; 好了&#xff0c;饼画完了。 第0部分写到…

next初体验

创建项目 npm init next-app app-test 每次都会使用最新的creat-next-app去创建最新版本的项目 这里新版本的路径有所区别&#xff1a;他多了一个app的文件夹。 兼容老项目我们可以在app文件夹的同级增加pages目录&#xff0c;然后创建页面。新项目可以直接在app下创建&…

网络层 --- IP协议

目录 1. 前置性认识 2. IP协议 3. IP协议头格式 3.1. 4位版本 3.2. 4位首部长度 3.3. 8位服务类型 3.4. 16位总长度 3.5. 8位生存时间 TTL 3.6. 8位协议 3.7. 16位首部检验和 3.8. 32位源IP和32位目的IP 4. 分片问题 4.1. 为什么要分片 4.2. 分片是什么 4.2.1. …