陕西网站制,小游戏网页版入口,教你做网站的视频,门户网站建设与运行零、文章目录
Nginx02-安装
1、Nginx官网
Nginx官网地址#xff1a;http://nginx.org/ 2、Nginx下载
#xff08;1#xff09;Nginx下载
下载页地址#xff1a;http://nginx.org/en/download.html #xff08;2#xff09;更老版本下载
下载页地址#xff1a;http…零、文章目录
Nginx02-安装
1、Nginx官网
Nginx官网地址http://nginx.org/ 2、Nginx下载
1Nginx下载
下载页地址http://nginx.org/en/download.html 2更老版本下载
下载页地址http://nginx.org/download/ 3、Windows下安装
1下载最新稳定版解压如下 2两种启动nginx的方法
直接双击nginx.exe双击后一个黑色的弹窗一闪而过打开cmd命令窗口切换到nginx解压目录下输入命令nginx.exe回车即可
3检查nginx是否启动成功
直接在浏览器地址栏输入网址 http://localhost:80 回车出现以下页面说明启动成功 4修改nginx配置监听
nginx的配置文件是conf目录下的nginx.conf默认配置的nginx监听的端口为80如果80端口被占用可以修改为未被占用的端口即可。当我们修改了nginx的配置文件nginx.conf 时不需要关闭nginx后重新启动nginx只需要执行命令 nginx -s reload 即可让改动生效。 5三种关闭nginx方法
## 快速停止nginx
nginx -s stop## 完整有序的停止nginx
nginx -s quit## 使用taskkill
taskkill是用来终止进程的
/f是强制终止 .
/t终止指定的进程和任何由此启动的子进程。
/im示指定的进程名称
taskkill /f /t /im nginx.exe4、linux环境准备
1准备服务器环境
虚拟机VMware WorkStation安装教程参考VMware Workstation Pro详解Linux 系统Centos7.9上传软件工具FinalShell网络NAT 192.168.119.161
2确认CentOS的内核
准备一个内核为 2.6 及以上版本的操作系统因为 linux2.6 及以上内核才支持 epoll,而 Nginx 需要解决高并发压力问题是需要用到 epoll所以我们需要有这样的版本要求。我们可以使用 uname -a 命令来查询linux的内核版本
[rootlocalhost ~]# uname -a
Linux localhost.localdomain 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux3确保CentOS能联网
虚拟机设定NAT网络参考VMware Workstation Pro详解
[rootlocalhost ~]# ping www.baidu.com
PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq1 ttl128 time35.1 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq2 ttl128 time34.4 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq3 ttl128 time31.0 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq4 ttl128 time31.2 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq5 ttl128 time34.9 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq6 ttl128 time30.5 ms
...4确认关闭防火墙
这一项的要求仅针对于那些对 Linux 系统的防火墙设置规则不太清楚的建议大家把防火墙都关闭掉因为把防火墙关闭掉可以省掉后续 Nginx 使用过程中遇到的诸多问题。
systemctl stop firewalld # 关闭运行的防火墙系统重新启动后防火墙将重新打开
systemctl disable firewalld # 永久关闭防火墙系统重新启动后防火墙依然关闭
systemctl status firewalld # 查看防火墙状态5确认停用selinux
selinux(security-enhanced linux)美国安全局对于强制访问控制的实现在 Linux2.6 内核以后的版本中selinux 已经成功内核中的一部分。可以说selinux 是 Linux 史上最杰出的新安全子系统之一。虽然有了 selinux我们的系统会更安全但是对于使用 Nginx 或者其他的学习过程中会有很多设置所以这块建议大家将 selinux 进行关闭。修改配置文件/etc/selinux/config来进行设置修改 SELINUXdisabled然后重启下系统即可生效。 关闭之后使用sestatus查看是否关闭成功
[rootlocalhost ~]# sestatus
SELinux status: disabled5、Linux下Nginx安装环境配置
1更换YUM源
默认的源是国外的网速较慢经常会连不上更换为国内镜像源
# 备份原有的 Yum 源配置文件
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# 下载新的 Yum 源配置文件你可以选择使用阿里云、网易、腾讯云等国内镜像源。以下是使用阿里云作为例子的命令
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo# 清理YUM缓存并重建缓存
sudo yum clean all
sudo yum makecache2GCC
Nginx 是使用 C 语言编写的程序因此想要运行 Nginx 就需要安装一个编译工具。GCC 就是一个开源的编译器集合用于处理各种各样的语言其中就包含了 C 语言。
# 安装 gcc
yum install -y gcc# 查看 gcc 版本
gcc --version3PCRE
Nginx 在编译过程中需要使用到 PCRE 库perl Compatible Regular Expressoin 兼容正则表达式库)因为在 Nginx 的 Rewrite 模块和 Http 核心模块都会使用到 PCRE 正则表达式语法。
# 安装 PCRE 和 pcre-devel
yum install -y pcre pcre-devel# 查看 PCRE 是否安装成功
rpm -qa pcre pcre-devel4zlib
zlib 库提供了开发人员的压缩算法在 Nginx 的各个模块中需要使用 gzip 压缩所以我们也需要提前安装其库及源代码 zlib 和 zlib-devel。
# 安装 zlib 和 zlib-devel
yum install -y zlib zlib-devel# 查看 zlib 和 zlib-devel 是否安装成功
rpm -qa zlib zlib-devel5OpenSSL
OpenSSL 是一个开放源代码的软件库包应用程序可以使用这个包进行安全通信并且避免被窃听。SSLSecure Sockets Layer 安全套接协议的缩写可以在 Internet 上提供秘密性传输其目标是保证两个应用间通信的保密性和可靠性。在 Nginx 中如果服务器需要提供安全网页时就需要用到 OpenSSL 库所以我们需要对 OpenSSL 的库文件及它的开发安装包进行一个安装。
# 安装 OpenSSL 库
yum install -y openssl openssl-devel# 查看 OpenSSL 是否安装成功
rpm -qa openssl openssl-devel6全部软件一键安装
上述命令一个个来的话比较麻烦我们也可以通过一条命令来进行安装
# 全部安装 GCC、PCRE、zlib、OpenSSL
yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel# 查看安装版本
rpm -qa pcre pcre-devel zlib zlib-devel openssl openssl-devel6、Linux下Nginx安装
1源码简单安装
在 /opt目录下创建 nginx/core 目录-p 代表允许创建多级目录进入官网获取最新版本地址链接然后使用 wget 命令进行下载如果 wget 命令下载速度慢可以先下载到 Windows 系统再使用工具上传到 Linux 下。 # 创建指定目录
mkdir -p /opt/nginx/core# 切换到目录
cd /opt/nginx/core# 下载nginx
wget http://nginx.org/download/nginx-1.26.2.tar.gz# 解压
tar -xzf nginx-1.26.2.tar.gz配置编译安装
# 进入解压出的目录
cd nginx-1.26.2/# 配置安装的路径
./configure --prefix/usr/local/nginx# 编译安装
make make install启动测试访问服务器的IP地址http://192.168.119.161/
# 执行 nginx 文件
/usr/local/nginx/sbin/nginx2源码简单安装卸载
将 Nginx 的进程关闭
/usr/local/nginx/sbin/nginx -s stop将安装的 Nginx 进行删除
rm -rf /usr/local/nginx删除解压的安装文件
rm -rf /opt/nginx3yum安装
安装 yum-utils
sudo yum install -y yum-utils添加 yum 源文件
vim /etc/yum.repos.d/nginx.repo添加如下内容
[nginx-stable]
namenginx stable repo
baseurlhttp://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck1
enabled1
gpgkeyhttps://nginx.org/keys/nginx_signing.key
module_hotfixestrue[nginx-mainline]
namenginx mainline repo
baseurlhttp://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck1
enabled0
gpgkeyhttps://nginx.org/keys/nginx_signing.key
module_hotfixestrue使用 yum 安装 Nginx
sudo yum install -y nginx查看是否安装成功
[rootlocalhost nginx-1.26.2]# yum list | grep nginx
nginx.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-debug.x86_64 1:1.8.0-1.el7.ngx nginx-stable
nginx-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-geoip.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-geoip-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-image-filter.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-image-filter-debuginfo.x86_641:1.26.1-2.el7.ngx nginx-stable
nginx-module-njs.x86_64 1:1.26.10.8.5-2.el7.ngx nginx-stable
nginx-module-njs-debuginfo.x86_64 1:1.26.10.8.5-2.el7.ngx nginx-stable
nginx-module-perl.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-perl-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-xslt.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-module-xslt-debuginfo.x86_64 1:1.26.1-2.el7.ngx nginx-stable
nginx-nr-agent.noarch 2.0.0-12.el7.ngx nginx-stable
pcp-pmda-nginx.x86_64 4.3.2-13.el7_9 updates查看nginx的安装位置
[rootlocalhost ~]# whereis nginx
nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx /usr/share/man/man8/nginx.8.gz启动测试访问服务器的IP地址http://192.168.119.161/
/usr/sbin/nginx简单安装VSyum安装yum安装会默认设设定一大堆参数大部分是不需要贴别修改的所以yum安装更简单。
4yum安装卸载
将 Nginx 的进程关闭
/usr/sbin/nginx -s stopyum移除nginx
yum remove nginx5源码复杂安装
在 /opt目录下创建 nginx/core 目录-p 代表允许创建多级目录进入官网获取最新版本地址链接然后使用 wget 命令进行下载如果 wget 命令下载速度慢可以先下载到 Windows 系统再使用工具上传到 Linux 下。
# 创建指定目录
mkdir -p /opt/nginx/core# 切换到目录
cd /opt/nginx/core# 下载nginx
wget http://nginx.org/download/nginx-1.26.2.tar.gz# 解压
tar -xzf nginx-1.26.2.tar.gz配置编译安装
# 进入解压出的目录
cd nginx-1.26.2/# 配置安装的路径
./configure --prefix/usr/local/nginx \
--sbin-path/usr/local/nginx/sbin/nginx \
--modules-path/usr/local/nginx/modules \
--conf-path/usr/local/nginx/conf/nginx.conf \
--error-log-path/usr/local/nginx/logs/error.log \
--http-log-path/usr/local/nginx/logs/access.log \
--pid-path/usr/local/nginx/logs/nginx.pid \
--lock-path/usr/local/nginx/logs/nginx.lock# 编译安装
make make install启动测试访问服务器的IP地址http://192.168.119.161/
# 执行 nginx 文件
/usr/local/nginx/sbin/nginx简答安装VS复杂安装差异主要是/configure参数不同说明如下
指令作用默认值–prefixPATH指向 Nginx 的安装目录/usr/local/nginx–sbin-pathPATH指向(执行)程序文件(nginx)的路径安装目录/sbin/nginx–modules-pathPATH指向 Nginx 动态模块安装目录安装目录//modules–conf-pathPATH指向配置文件(nginx.conf)的路径安装目录/conf/nginx.conf–error-log-pathPATH指向错误日志文件的路径安装目录/logs/error.log–http-log-pathPATH指向访问日志文件的路径安装目录/logs/access.log–pid-pathPATH指向 Nginx 启动后进行ID的文件路径安装目录/logs/nginx.pid–lock-pathPATH指向 Nginx 锁文件的存放路径安装目录/logs/nginx.lock
6源码复杂安装卸载
将 Nginx 的进程关闭
/usr/local/nginx/sbin/nginx -s stop将安装的 Nginx 进行删除
rm -rf /usr/local/nginx删除解压的安装文件
rm -rf /opt/nginx7、Nginx目录结构
1安装tree
yum install -y tree2目录结构
CGI(Common Gateway Interface)通用网关【接口】主要解决的问题是从客户端发送一个请求和数据服务端获取到请求和数据后可以调用CGI【程序】处理及相应结果给客户端的。fastcgi scgi uwsgi等是一些速度比较快的协议
[rootlocalhost nginx-1.26.2]# tree /usr/local/nginx
/usr/local/nginx
├── client_body_temp
├── conf
│ ├── fastcgi.conf
│ ├── fastcgi.conf.default
│ ├── fastcgi_params
│ ├── fastcgi_params.default
│ ├── koi-utf
│ ├── koi-win
│ ├── mime.types
│ ├── mime.types.default
│ ├── nginx.conf
│ ├── nginx.conf.default
│ ├── scgi_params
│ ├── scgi_params.default
│ ├── uwsgi_params
│ ├── uwsgi_params.default
│ └── win-utf
├── fastcgi_temp
├── html
│ ├── 50x.html
│ └── index.html
├── logs
│ ├── access.log
│ ├── error.log
│ └── nginx.pid
├── proxy_temp
├── sbin
│ └── nginx
├── scgi_temp
└── uwsgi_temp9 directories, 21 files3核心文件
nginx 二进制可执行文件启动、关闭、加载 Nginxnginx.conf 配置文件error.log 错误的日志记录access.log 访问日志记录
4文件说明
client_body_temp存放客户端请求体的临时文件。conf存放Nginx的配置文件。 fastcgi.conf 和 fastcgi.conf.defaultFastCGI 配置文件及其默认配置。fastcgi_params 和 fastcgi_params.defaultFastCGI 参数文件及其默认配置。koi-utf 和 koi-win字符编码转换文件。mime.types 和 mime.types.default定义MIME类型的文件及其默认配置。nginx.conf 和 nginx.conf.defaultNginx 主配置文件及其默认配置。scgi_params 和 scgi_params.defaultSCGI 参数文件及其默认配置。uwsgi_params 和 uwsgi_params.defaultuWSGI 参数文件及其默认配置。win-utfWindows 平台的字符编码转换文件。 fastcgi_temp存放FastCGI的临时文件。html存放静态网页文件。 50x.html错误页面通常用于显示服务器内部错误。index.html默认首页。 logs存放Nginx的日志文件。 access.log访问日志。error.log错误日志。nginx.pidNginx 主进程的PID文件。 proxy_temp存放代理请求的临时文件。sbin存放Nginx的可执行文件。 nginxNginx 的主可执行文件。 scgi_temp存放SCGI的临时文件。uwsgi_temp存放uWSGI的临时文件。