首页 > 系统相关 >练习回—编译安装nginx

练习回—编译安装nginx

时间:2023-07-30 22:44:20浏览次数:48  
标签:sbin 31yml 编译 安装 练习 nginx yum rpm

练习回

练习,编译安装nginx。

1、yum安装依赖环境
 yum -y install pcre-devel zlib-devel gcc gcc-c++ make 
2、“下载”安装包再解压

可用利用xshell直接拖拽文件包

 wget http://nginx.org/download/nginx-1.18.0.tar.gz#也可以用命令去下载
 tar xf nginx-1.18.0.tar.gz
3、利用confiure下载到本地
 [root@31yml opt]#cd /opt/nginx-1.18.0
 [root@31yml nginx-1.18.0]#ls
 auto     CHANGES.ru configure html     Makefile objs   src
 CHANGES conf       contrib   LICENSE man       README
 [root@31yml nginx-1.18.0]#./configure --prefix=/apps/nginx
4、编译并安装
 make  -j2#二选一,随你
 #两核编译
 make install
 #安装进 系统
5、创建软连接方便补全
 [root@31yml sbin]#mkdir /usr/sbin/nginx
 [root@31yml sbin]#ln -s /apps/nginx/sbin/nginx /usr/sbin/n
6、写入文件
 vim /usr/lib/systemd/system/nginx.service 
 #建立 service   文件
 [Unit]
 Description=nginx - high performance web server
 Documentation=http://nginx.org/en/docs/
 After=network-online.target remote-fs.target nss-lookup.target
 Wants=network-online.target
 ​
 [Service]
 Type=forking
 PIDFile=/apps/nginx/logs/nginx.pid
 ExecStart=/apps/nginx/sbin/nginx -c /apps/nginx/conf/nginx.conf
 ExecReload=/bin/kill -s HUP $MAINPID
 ExecStop=/bin/kill -s TERM $MAINPID
 ​
 [Install]
 WantedBy=multi-user.target
7、善后
 systemctl daemon-reload
 #重新加载 systemctl 程序
 systemctl    start nginx    
 #启动     nginx   服务
 systemctl   status nginx
 #查看nginx 状态

展示:启动之后能看到启动状态即可,当然也可以访问127.0.0.1

image-20230729230056985

个人所遇问题与解决方案

1、一开始yum安装依赖环境一直发生错误尝试别的镜像网站

个人推理:我的网关能支持正常上网,但肯定是有问题

解决思路,报错信息扔到百度,找到方案决定升级本地yum仓库。

博客推荐:https://blog.51cto.com/u_14879850/5867499

https://zhuanlan.zhihu.com/p/522660324?utm_id=0

1、删除老仓库

 rpm -qa | grep yum #查找yum包
 ​
 rpm -qa|grep yum|xargs rpm -e --nodeps #删除yum包
 ​
 rpm -qa |grep yum #再查看发现无输出,即代表yum包删除干净

2、下载新的yum包

http://mirrors.163.com/centos/7/os/x86_64/Packages/ 这个目录下 找最新的rpm包,并下载。

找到如下文件包:

yum-最新版.centos.noarch.rpm yum-metadata-parser-最新版.x86_64.rpm yum-plugin-fastestmirror-最新版.noarch.rpm

 rpm -ivh yum*#我是一个一个安装的,考考你还记不记得rpm命令
 #还可以用rpm -q查看是否已安装好
 #包之间还有依赖关系,一口气全安装应该没事

3、导入证书

 rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-7sa

4、添加阿里源

 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

5、清除缓存、生成新缓存

 yum clean all
 yum makecache

最后,通过命令查看配置好的yum源是否正常:yum repolist

结语:感谢前辈总结,借鉴整理之目的是便于复习回顾,再次感谢网络上的前辈们。

标签:sbin,31yml,编译,安装,练习,nginx,yum,rpm
From: https://www.cnblogs.com/bacolate/p/17592241.html

相关文章

  • 我的第六次C语言练习
    //复习//intA(intx,inty);//intB(intx,inty);//intmain(void)//{// inta,b,c,d,f;// a=0;// b=0;// scanf("%d%d",&a,&b);// c=A(a,b);// d=A(b,c);// f=B(c,d)+a*B(a,c);// printf("end=%d\n",f)......
  • 【ACM专项练习#01】基本输入输出,如何加减
    关于ACM,牛客其实也有专门的模拟练习:https://ac.nowcoder.com/acm/contest/5657#question做这个也可以关于while(cin>>n)在处理输入时,cin>>n;while(n--)和while(cin>>n)是两种常见方法这里说一下区别cin>>n;while(n--)当你预先知道迭代次数,并希望根据该次数执......
  • 【ACM专项练习#02】整行字符串、输入vector、打印图形、处理n组数据以及链表操作等
    输入整行字符串平均绩点题目描述每门课的成绩分为A、B、C、D、F五个等级,为了计算平均绩点,规定A、B、C、D、F分别代表4分、3分、2分、1分、0分。输入有多组测试样例。每组输入数据占一行,由一个或多个大写字母组成,字母之间由空格分隔。输出每组输出结果占一行。如果输入的大......
  • 项目搭建Nginx的使用
    1、使用nginx代理我们的前端页面,Nginx是自带缓存的,如果页面修改了没有刷新出来可以清除浏览器数据或者按Shift+f5进行强制刷新试试找到我们的nginx安装目录下的D:\StudyConfig\nginx\nginx-1.12.0\conf\nginx.conf文件进行配置:在server找到location,然后配置我们需要代理的前......
  • linux 编译内核,换内核流程和方法
      1:先找一个合适版本的内核,下载,解压到系统中的任意一个目录TheLinuxKernelArchives这个内核版本,如果要绝对稳定或者安全,那么最好是和当前系统的内核大、中版本相同,如,我的系统版本如果为5.15.38那么我最好是换成相近的系列,如5.15.123尽量别上6否则可能出问题假......
  • 编译期计算
    模板元函数基本概念支持在编译期调用并完成计算的函数即称为模板元函数,由于是在编译期完成,进而改善运行时的性能。元函数实际上即为C++中的一个模板类。元函数的通常形式为:template<typenameT,typenameTs>//元函数列表structMetaFunction{......
  • HotSpot编译执行硬编码生成
    目录背景源码指令解析硬编码总结背景在一个技术群里,有一个哥们对着hotspot的源码问了个问题:源码看一下对应的源码://来源:hotspot/src/cpu/x86/vm/assembler_x86.cppvoidAssembler::notl(Registerdst){intencode=prefix_and_encode(dst->encoding());emit_int8(......
  • C语言分支与循环(12)--- 练习题
    一.练习题1.给定两个数,求这两个数的最大公约数,如求24与18的最大公约数方法:假设m=24n=181.将24与18进行取模,得到的结果是商1,余数为6,有余数证明并没有被整除2.将18再模6,可以得到商3余0,所以我们可以得到6是我们的最大公约数3.如果声明一个变量r来接收数据,如果r=0则代表n为最大公约数,......
  • Vue3.3 编译宏
    Vue3.3新增了一些语法糖和宏,包括泛型组件、defineSlots、defineEmits、defineOptionsdefineProps父子组件传参<template><div><Childname="xiaoman"></Child></div></template><scriptlang='ts'setup>importChildf......
  • v831-c-编译环境部署篇
    学了一遍又学回来了,整理整理v831的环境吧头文件这些头文件上面部分是在python里面在编译成可执行文件之前会创造出来的,不用理他下面则是components里面的,需要在.vscode里面设置一下路径这样基本上就可以了,其他的我们不再vscode里面一键操作,就不设置了工具链路径工具链的路......