Nginx网站服务
2021/4/7 7:12:43
本文主要是介绍Nginx网站服务,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 编译安装Nginx服务
- 1.关闭防火墙,将所需软件包传到/opt目录下
- 2.安装依赖包
- 3.创建运行用户、组
- 4.编译安装Nginx
- 5.检查、启动、重启、停止nginx服务
- 6.添加 Nginx 系统服务
- Nginx的主配置文件
- 1.全局模式
- 2.I/O事件配置
- 3.HTTP配置
- 4.浏览器访问
- 5.日志格式设定
- 访问状态统计配置
- 1.查看是否包含HTTP_STUB_STATUS 模块
- 2.修改配置文件
- 3.重启服务,浏览器访问![在这里插入图片描述](https://www.www.zyiz.net/img/ll/?i=20210406145755356.png)
- 基于授权的访问控制
- 1.生成用户密码认证文件
- 2.修改主配置文件
- 3.重启服务,浏览器访问
- 基于客户端的访问控制
- 基于域名的Nginx虚拟主机
- 1.域名解析
- 2.为虚拟主机准备网页文档
- 3.修改Nginx的配置文件
- 4.重启服务,访问浏览器
- 基于IP的Nginx虚拟主机
- 1.创建一个虚拟网卡
- 2.修改配置文件
- 3.浏览器访问
- 基于端口的Nginx虚拟主机
编译安装Nginx服务
1.关闭防火墙,将所需软件包传到/opt目录下
2.安装依赖包
3.创建运行用户、组
Nginx 服务程序默认以 nobody 身份运行,建议为其创建专门的用户账号,以便更准确地控制其访问权限
4.编译安装Nginx
5.检查、启动、重启、停止nginx服务
nginx -t #检查配置文件是否配置正确 #启动 nginx #停止 cat /usr/local/nginx/logs/nginx.pid #先查看nginx的PID号 kill -3 <PID号> kill -s QUIT <PID号> killall -3 nginx killall -s QUIT nginx #重载 kill -1 <PID号> kill -s HUP <PID号> killall -1 nginx killall -s HUP nginx #日志分隔,重新打开日志文件 kill -USR1 <PID号> #平滑升级 kill -USR2 <PID号>
6.添加 Nginx 系统服务
方法一: vim /etc/init.d/nginx #!/bin/bash #chkconfig: - 99 20 #description:Nginx Service Control Script COM="/usr/local/nginx/sbin/nginx" PID="/usr/local/nginx/logs/nginx.pid" case "$1" in start) $COM ;; stop) kill -s QUIT $(cat $PID) ;; restart) $0 stop $0 start ;; reload) kill -s HUP $(cat $PID) ;; *) echo "Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0 chmod +x /etc/init.d/nginx chkconfig --add nginx #添加为系统服务 systemctl stop nginx systemctl start nginx 方法二: vim /lib/systemd/system/nginx.service [Unit] Description=nginx After=network.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStart=/usr/local/nginx/sbin/nginx ExecrReload=/bin/kill -s HUP $MAINPID ExecrStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target chmod 754 /lib/systemd/system/nginx.service systemctl start nginx.service systemctl enable nginx.service
Nginx的主配置文件
vim /usr/local/nginx/conf/nginx.conf
1.全局模式
2.I/O事件配置
3.HTTP配置
4.浏览器访问
5.日志格式设定
$remote_addr与$http_x_forwarded_for用以记录客户端的ip地址; $remote_user:用来记录客户端用户名称; $time_local: 用来记录访问时间与时区; $request: 用来记录请求的url与http协议; $status: 用来记录请求状态;成功是200, $body_bytes_sent :记录发送给客户端文件主体内容大小; $http_referer:用来记录从那个页面链接访问过来的; $http_user_agent:记录客户浏览器的相关信息; 通常web服务器放在反向代理的后面,这样就不能获取到客户的IP地址了,通过$remote_add拿到的IP地址是反向代理服务器的iP地址。反向代理服务器在转发请求的http头信息中,可以增加x_forwarded_for信息,用以记录原有客户端的IP地址和原来客户端的请求的服务器地址。
location常见配置指令,root、alias、proxy_pass root(根路径配置):请求www.zzw.com/test,会返回文件/usr/local/nginx/html/test/index.html alias(别名配置):请求www.zzw.com/test,会返回文件/usr/local/nginx/html/index.html
访问状态统计配置
1.查看是否包含HTTP_STUB_STATUS 模块
2.修改配置文件
3.重启服务,浏览器访问![在这里插入图片描述](/upload/202104/07/202104070712299655.png)
基于授权的访问控制
1.生成用户密码认证文件
2.修改主配置文件
3.重启服务,浏览器访问
基于客户端的访问控制
访问控制规则 deny IP/IP 段:拒绝某个 IP 或 IP 段的客户端访问。 allow IP/IP 段:允许某个 IP 或 IP 段的客户端访问。 规则从上往下执行,如匹配则停止,不再往下匹配。
基于域名的Nginx虚拟主机
1.域名解析
2.为虚拟主机准备网页文档
3.修改Nginx的配置文件
4.重启服务,访问浏览器
基于IP的Nginx虚拟主机
1.创建一个虚拟网卡
2.修改配置文件
3.浏览器访问
基于端口的Nginx虚拟主机
这篇关于Nginx网站服务的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-03-29fail2ban nginx
- 2024-03-18install nginx proxy manager
- 2024-01-2444从零开始用Rust编写nginx,命令行参数的设计与解析及说明
- 2024-01-22比Nginx更好用的Gateway!
- 2024-01-17nginx daemon off
- 2023-12-30Nginx Vhost Traffic Status 是什么意思-icode9专业技术文章分享
- 2023-12-26使用nginx搭建creates.io镜像(稀疏索引)
- 2023-11-18centos7编译安装Nginx教程。
- 2023-11-02nginx启动命令和停止命令
- 2023-10-25Centos7系统Nginx负载均衡如何安装和配置?