nginx的yum安装和编译安装
一.什么是nginx?
nginx是一个做网站服务器的软件,是静态的网站
html 写前端静态页面的语言
python,java,php,go等动态语言,写后端的,就是和数据库进行交互
二.nginx的两种安装方式(yum安装,编译安装)有何区别?
yum安装:到nginx或者centos的官方去下载nginx的软件包安装
nginx.*.tar.gz --->制作成--> nginx.*.rpm结尾
编译安装:
nginx是使用c语言编写的,将源码编译成二进制程序,然后安装
需要自己解决软件之间的依赖关系,还需要指定很多的配置,难度大,可以可定制开启需要的功能--> 可以定制功能和指定安装的路径
yum安装和编译安装的区别:通俗一点来说就是在买衣服时,yum安装就是去专卖店买,衣服的款式,颜色,面料,大小等都已经固定了;而编译安装就是去裁缝店专门定制,看款式,颜色,面料,量尺寸等,还要等一段时间才能拿到衣服
三.编译安装经典的3部曲:
1.编译前的配置 : 选款式(西式),面料,颜色,量尺寸 ---> 定制的方案 --> 文件
./configure ---> 生成一个叫做Makefile文件 --> 方案 --> 设计图纸
2.编译
理解为讲源代码编译成二进制程序 --> 做衣服
make
3.编译安装
将已经编译好的二进制程序安装(cp)到指定的路径 --> 交付衣服给客户
make install
四.编译安装的脚本:
#!/bin/bash#解决软件的依赖关系,需要安装的软件包
yum install epel-release -y
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel gcc gcc-c++ autoconf automake make psmisc net-tools lsof vim geoip geoip-devel wget -y#新建luogan用户和组
id zhangsw || useradd zhangsw -s /sbin/nologin#下载nginx软件
mkdir /zhangsw99 -p
cd /zhangsw99
wget https://nginx.org/download/nginx-1.21.4.tar.gz#解压软件
tar xf nginx-1.21.4.tar.gz
#进入解压后的文件夹
cd nginx-1.21.4#编译前的配置
./configure --prefix=/usr/local/sczhangsw99 --user=zhangsw --group=zhangsw --with-http_ssl_module --with-threads --with-http_v2_module --with-http_stub_status_module --with-stream --with-http_geoip_module --with-http_gunzip_module#如果上面的编译前的配置失败,直接退出脚本
if (( $? != 0));thenexit
fi
#编译,启动2个进程去编译,这样速度快
make -j 2
#编译安装
make install#修改PATH变量
echo "PATH=$PATH:/usr/local/sczhangsw99/sbin" >>/root/.bashrc
#执行修改了环境变量的脚本
source /root/.bashrc#firewalld and selinux#stop firewall和设置下次开机不启动firewalld
service firewalld stop
systemctl disable firewalld#临时停止selinux和永久停止selinux
setenforce 0
sed -i '/^SELINUX=/ s/enforcing/disabled/' /etc/selinux/config#开机启动
chmod +x /etc/rc.d/rc.local
echo "/usr/local/sczhangsw99/sbin/nginx" >>/etc/rc.local#修改nginx.conf的配置,例如:端口号,worker进程数,线程数,服务域名sed -i '/worker_processes/ s/1/2/' /usr/local/sczhangsw99/conf/nginx.conf
sed -i '/worker_connections/ s/1024/2048/' /usr/local/sczhangsw99/conf/nginx.conf
sed -i -r '36c \\tlisten 80;' /usr/local/sczhangsw99/conf/nginx.conf
sed -i -r '37c \\tserver_name www.zhangsw.com;' /usr/local/sczhangsw99/conf/nginx.conf#killall nginx进程
killall -9 nginx#启动nginx
/usr/local/sczhangsw99/sbin/nginx
五.将nginx写到配置文件里
这一步的目的是为了让nginx赶开机的顺风车,即开机自动启动nginx
操作如下:
#打开profile文件,将nginx路径写到配置文件里面,让她开机自动启动
[root@zsw ~]# vim /etc/profile
打开之前没有箭头那一行,把箭头那一行添加进去,然后进行下面这一步
[root@zsw ~]# source /etc/profile
source命令就是不关闭或重启当前终端的情况下让配置文件生效,类似于网页上面的刷新(我自己这样理解)
执行完之后就可以让nginx生效
==================================分割线=================================
如下是另外一种方法:
操作如下:
[root@zsw sbin]# vim /root/.bashrc
打开后
把上面那一句添加在里面就行
完了之后执行下面这句
[root@zsw sbin]# source /root/.bashrc
但是这种方是不建议,因为这个配置文件只是支持root用户,换成普通用户就不能用了,所以还是建议用上面那种方法
nginx的yum安装和编译安装相关推荐
- Linux/CentOS安装MySQL(RPM安装、编译安装)
2019独角兽企业重金招聘Python工程师标准>>> Linux/CentOS安装MySQL(RPM安装.编译安装) 目前最常用的MySQL安装方法也就是采用Yum安装RPM包,或 ...
- Linux中级实战专题篇一:nginx服务(特性优势,yum安装,编译安装详解,虚拟主机技术详解)
一.HTTP 介绍 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器 ...
- nginx之 nginx-1.9.7 编译安装、理论简介
nginx是一个web网站常用的高性能http和反向代理服务器,其具有较好的并发能力,被网易.百度.腾讯.新浪等网站广泛使用. 一. 理论简介 1.首先弄清楚正向代理和反向代理 正向代理:代理客户端, ...
- linux nginx mysql php 5.5.,编译安装Linux + Nginx1.10 + Mysql5.5 + PHP5.6
前言:本教程只编译NMP,依赖文件都用YUM,不编译了,珍爱生命,不要浪费时间! YUM 依赖文件 yum -y install gcc gcc-c++ autoconf cmake libjpeg ...
- nginx安装的详细教程(包括命令行安装和编译安装)
Nginx 是一个很强大的高性能Web和反向代理服务.是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:Nginx可以作为一个HTTP服 ...
- 安装nginx(官网下载编译安装)
1.官网https://nginx.org/下载对应的nginx包,推荐使用稳定版本 2.上传nginx到centOs7系统(这里使用xshell和xftp,连接到自己本地vm的centOs7中) 3 ...
- centos6.3 nginx php,CentOS 6.3 编译安装Nginx+MySQL+PHP
测试篇 cd /usr/local/nginx/html/ #进入nginx默认网站根目录 rm -rf /usr/local/nginx/html/* #删除默认测试页 vi index.php # ...
- 程序包管理rpm、yum与简单编译安装程序
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- Linux的cmake3的安装 cmake3编译安装成功了的 yum对于cmake3表示成功但实际没成功
3.10.0 安装gcc的软件依赖 yum install -y gcc gcc-c++ make automake安装wget yum install -y wget下载cmake源代码包 wget ...
最新文章
- MaxCompute助力OSS支持EB级计算力
- 2021年我的互联网秋招算法岗总结!
- 部署ArcGIS JS API 离线包(Tomcat与IIS)
- Linux7如何手动建库,Centos 7系列删除数据库并重新安装
- 第二十一讲 卷积公式
- Knative 基本功能深入剖析:Knative Serving 的流量灰度和版本管理
- 利用django中间件CsrfViewMiddleware防止csrf攻击
- ubuntu下安装mysql
- LeetCode 多线程 1115. 交替打印FooBar
- 【STM32】窗口看门狗相关类型和函数
- PHPCMS资源网站源码软件源码下载站网站源码
- matlab用卷积积分求单自由度阻尼系统响应(零极点模型)
- 【并行计算-CUDA开发】 NVIDIA Jetson TX1
- pragma预处理指令详解
- 批处理通过bat文件定时调起本地的计算器或者画图工具并关闭
- SQL Server2019 Develop版本安装
- 浏览器访问php文件提示下载文件,php – 使用浏览器提示下载文件
- OSS对象存储是什么?
- Unity3d常用快捷键
- python七巧板拼图代码_为什么代码都是用英文来写的,将来会有用中文写代码的那天吗?...
热门文章
- java计算机毕业设计springboot+vue基本微信小程序的电子书阅读器小程序
- @zabbix监控mysql数据库<Percona工具>
- 使用ssh 连接linux 并传送文件
- Android多媒体功能开发(12)——使用Camera类拍照
- database disk image is malformed解决方法
- 音量调大时出现爆音的问题解决(也是从我的新浪博客转来的)
- htc820+android+l,首款8核64位处理器 HTC Desire 820发布
- 程序员如何更好的获取自己的学习书单
- java代码实现id_使用java代码实现简单的ID自增的工具类
- cocos2dx 植物大战僵尸 22 寒冰射手