nginx如何部署
01.yum安装部署
官方源安装: 最新稳定版本 目录结构信息
非官方源安装: 历史稳定版本
02.编译安装部署 灵活安装软件
1. nginx yum部署
vim /etc/yum.repos.d/nginx.repo
[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
yum install -y nginx
2.编译安装nginx
文件存放路径
mkdir -p /server/tools
cd /server/tools
wget http://nginx.org/download/nginx-1.16.0.tar.gz
解决软件依赖
pcre-devel: perl语言兼容正则表达式
openssl-devel: 实现HTTPS访问
./configure --prefix=(软件安装目录) --user=worker进程管理用户 --group=worker进程管理用户组
--with-http_stub_status_module(状态监控模块) --with-http_ssl_module(实现HTTPs访问功能)
./configure --prefix=/application/nginx-1.16 --user=www --group=www
--with-http_stub_status_module --with-http_ssl_module
--without-xxxx : 编译配置关闭什么指定功能
--wiht-xxx : 编译设置开启什么指定功能
编译过程: 翻译---机器识别信息
make: 开发人员代码(c python)
编译安装:
make install
./configure --prefix=(软件安装目录) --user=worker进程管理用户 --group=worker进程管理用户组
--with-http_stub_status_module(状态监控模块) --with-http_ssl_module(实现HTTPs访问功能)
./configure --prefix=/application/nginx-1.16 --user=www --group=www
--with-http_stub_status_module --with-http_ssl_module
--without-xxxx : 编译配置关闭什么指定功能
--wiht-xxx : 编译设置开启什么指定功能
编译过程: 翻译---机器识别信息
make: 开发人员代码(c python)
编译安装:
make install
./configure --prefix=(软件安装目录) --user=worker进程管理用户 --group=worker进程管理用户组
--with-http_stub_status_module(状态监控模块) --with-http_ssl_module(实现HTTPs访问功能)
./configure --prefix=/application/nginx-1.16 --user=www --group=www
--with-http_stub_status_module --with-http_ssl_module
--without-xxxx : 编译配置关闭什么指定功能
--wiht-xxx : 编译设置开启什么指定功能
编译过程: 翻译---机器识别信息
make: 开发人员代码(c python)
编译安装:
make install
nginx软件目录 image.png
nginx程序配置文件说明
nginx主配置文件
cat /etc/nginx/nginx.conf
user www; --- 指定worker进程管理用户
master进程: 管理服务是否运行
worker进程: 处理用户访问请求
worker_processes 4; --- 指定worker进程数量 进程数量- 服务器总核心数
进程数量- 服务器总核心数
error_log /var/log/nginx/error.log warn; --- 指定错误日志存放路径
pid /var/run/nginx.pid; --- 指定程序pid文件存放路径 记录进程号
events {
worker_connections 1024; --- 一个worker进程最大并发处理能力 4*1024=4096 socket文件
系统打开文件数 程序运行
open files (-n) 1024 ssh服务
echo '* - nofile 65535 ' >>/etc/security/limits.conf
}
http {
include /etc/nginx/mime.types; --- 加载媒体资源类型文件
default_type application/octet-stream; --- 默认识别
log_format oldboy '$remote_addr - $remote_user [$time_local] "$request" ' --- 访问日志文件格式信息
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log oldboy; --- 访问日志路径 调取什么格式信息
keepalive_timeout 65; --- 设置nginx为长连接 65秒连接超时
include /etc/nginx/conf.d/*.conf; --- 加载扩展配置文件
}
3.nginx配置文件分为不同区域:
主配置文件: 服务运行参数信息
事件区域: 服务程序性能参数
http区域: 配置网站访问参数
server: 针对每个网站进行配置
nginx扩展配置件:/etc/nginx/conf.d/default
location区域: 匹配信息区域
if区域: 判断信息区域
4. 如何利用logrotate程序进行日志切割 系统自带切割日志程序
在脚本里写
nginx log logrotate
01 23 * * * /usr/sbin/logrotate -f /etc/logrotated/nginx >/dev/null 2>&1
第一点: 掌握logrotate主配置文件
第二点: 掌握logrotate扩展文件配置
第三点: 自己编写日志文件,测试如何让logrotate进行切割
网友评论