一.什么是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安装和编译安装相关推荐

  1. Linux/CentOS安装MySQL(RPM安装、编译安装)

    2019独角兽企业重金招聘Python工程师标准>>> Linux/CentOS安装MySQL(RPM安装.编译安装) 目前最常用的MySQL安装方法也就是采用Yum安装RPM包,或 ...

  2. Linux中级实战专题篇一:nginx服务(特性优势,yum安装,编译安装详解,虚拟主机技术详解)

    一.HTTP 介绍 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器 ...

  3. nginx之 nginx-1.9.7 编译安装、理论简介

    nginx是一个web网站常用的高性能http和反向代理服务器,其具有较好的并发能力,被网易.百度.腾讯.新浪等网站广泛使用. 一. 理论简介 1.首先弄清楚正向代理和反向代理 正向代理:代理客户端, ...

  4. 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 ...

  5. nginx安装的详细教程(包括命令行安装和编译安装)

    Nginx 是一个很强大的高性能Web和反向代理服务.是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:Nginx可以作为一个HTTP服 ...

  6. 安装nginx(官网下载编译安装)

    1.官网https://nginx.org/下载对应的nginx包,推荐使用稳定版本 2.上传nginx到centOs7系统(这里使用xshell和xftp,连接到自己本地vm的centOs7中) 3 ...

  7. 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 # ...

  8. 程序包管理rpm、yum与简单编译安装程序

    Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...

  9. Linux的cmake3的安装 cmake3编译安装成功了的 yum对于cmake3表示成功但实际没成功

    3.10.0 安装gcc的软件依赖 yum install -y gcc gcc-c++ make automake安装wget yum install -y wget下载cmake源代码包 wget ...

最新文章

  1. MaxCompute助力OSS支持EB级计算力
  2. 2021年我的互联网秋招算法岗总结!
  3. 部署ArcGIS JS API 离线包(Tomcat与IIS)
  4. Linux7如何手动建库,Centos 7系列删除数据库并重新安装
  5. 第二十一讲 卷积公式
  6. Knative 基本功能深入剖析:Knative Serving 的流量灰度和版本管理
  7. 利用django中间件CsrfViewMiddleware防止csrf攻击
  8. ubuntu下安装mysql
  9. LeetCode 多线程 1115. 交替打印FooBar
  10. 【STM32】窗口看门狗相关类型和函数
  11. PHPCMS资源网站源码软件源码下载站网站源码
  12. matlab用卷积积分求单自由度阻尼系统响应(零极点模型)
  13. 【并行计算-CUDA开发】 NVIDIA Jetson TX1
  14. pragma预处理指令详解
  15. 批处理通过bat文件定时调起本地的计算器或者画图工具并关闭
  16. SQL Server2019 Develop版本安装
  17. 浏览器访问php文件提示下载文件,php – 使用浏览器提示下载文件
  18. OSS对象存储是什么?
  19. Unity3d常用快捷键
  20. python七巧板拼图代码_为什么代码都是用英文来写的,将来会有用中文写代码的那天吗?...

热门文章

  1. java计算机毕业设计springboot+vue基本微信小程序的电子书阅读器小程序
  2. @zabbix监控mysql数据库<Percona工具>
  3. 使用ssh 连接linux 并传送文件
  4. Android多媒体功能开发(12)——使用Camera类拍照
  5. database disk image is malformed解决方法
  6. 音量调大时出现爆音的问题解决(也是从我的新浪博客转来的)
  7. htc820+android+l,首款8核64位处理器 HTC Desire 820发布
  8. 程序员如何更好的获取自己的学习书单
  9. java代码实现id_使用java代码实现简单的ID自增的工具类
  10. cocos2dx 植物大战僵尸 22 寒冰射手