Nginx学习
Nginx
Centos
系统下学习
安装
依赖安装
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
开始安装
./configure --prefix=/usr/local/nginx
make
make install
命令
nginx #启动
nginx -s stop #立即停止
nginx -s quit #优雅关闭,所有请求处理完成之后再停止
nginx -s reload #重新加载配置,不影响正在进行的进程
设置自启脚本
编辑
vi /usr/lib/systemd/system/nginx.service
脚本内容
[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重新加载系统服务
systemctl daemon-reload
系统服务命令
systemctl start nginx #启动nginx
systemctl status nginx #检查nginx状态
systemctl ebable nginx #开机自启
Nginx
运行原理和配置文件
work_processes 1;#开启多少个进程
events{
#1个进程最多可以多少连接
#单个进程最大连接数(最大连接数=连接数*进程数)
work_connections 1024;
}
http{
#include 用于引入其他配置文件
#mime.types 用于匹配文件类型
include mime.types;
#默认的文件类型
default_type application/pctet_stream;
#是否开启零拷贝
sendfile on;
#长连接
keepalive_timeout 65;
#一个server代表一个虚拟主机(vhost)
server{
#监听的端口号
listen 80;
#主机名 可以是域名、主机名
server_name localhost;
location /{
#根目录 html是相对目录 相对于nginx主目录
root html;
#默认页面
index index.html index.htm;
}
#报错页面
error_page 500 502 503 504 /50x.html;
location =/50x.html{
root html;
}
}
}
server_name
配置
-
普通匹配
-
通配符匹配
*.xxcheng.cn
www.xxcheng.cn
aaa.xxcheng.cn
-
通配符结束匹配
www.xxcheng.*
www.xxcheng.cn
www.xxcheng.top
-
正则匹配
~^[0-9]+\.xxcheng\.cn$
111.xxcheng.cn
222.xxcheng.cn
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。