web服务与nginx

web服务与nginx

1、什么是web服务

web就是B/S架构

2、web服务器软件

1、apache
网络模型
	select
	poll
	epoll

2、Nginx

官网:https://nginx.org/
软件:https://nginx.org/download/

3、部署Nginx

1、yum安装
    [root@web01 ~]# vim /etc/yum.repos.d/nginx.repo
    [root@web01 ~]# yum install nginx -y
	[root@web01 ~]# systemctl stop httpd
	[root@web01 ~]# systemctl start nginx

2、二进制安装

3、编译安装
	[root@web01 ~]#  wget https://nginx.org/download/nginx-1.20.2.tar.gz
	[root@web01 ~]# tar -xf nginx-1.20.2.tar.gz
	[root@web01 nginx-1.20.2]# ./configure
	[root@web01 nginx-1.20.2]# make
	[root@web01 nginx-1.20.2]# make install

4、平滑增加Nginx模块

增加模块必须重新编译。
[root@web01 ~]# tar -xf nginx-1.20.2.tar.gz
[root@web01 ~]# cd nginx-1.20.2
[root@web01 nginx-1.20.2]#./configure  --with-http_ssl_module
[root@web01 nginx-1.20.2]#make 
[root@web01 nginx-1.20.2]#make install 

5、Nginx的命令

1、-v : 打印版本号
[root@web01 ~]# nginx -v
nginx version: nginx/1.20.2

2、-V : 打印版本号和配置项
[root@web01 ~]# nginx -V
nginx version: nginx/1.20.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx 

3、-t : 检查配置文件
[root@web01 ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4、-T : 测试配置文件并启动

5、-q :打印错误日志

6、-s : 操作进程
	stop	:停止
	quit	:退出
	reopen	:重启
	reload	:重载
7、-p : 指定nginx的工作目录
8、-e : 指定错误日志路径
9、-c : 指定配置文件的路径
10、-g : 设置一个全局的Nginx配置项
[root@web01 ~]# nginx -g 'daemon off;'

6、Nginx配置文件

全局配置和模块配置

1、全局配置
	1、user : 指定Nginx的启动用户
	2、worker_processes : 定义Nginx的worker进程数
		auto === CPU数量
	3、error_log : 错误日志路径
	4、pid : pid的存放文件路径
	5、events : 模块配置
		5.1、worker_connections :每一个worker进程最多同时接入多少个请求
		5.2、use : 指定Nginx的网络模型
	6、http : web服务的模块
		6.1、include : 加载外部的配置项
		6.2、default_type : 如果找不到文件的类型,则按照指定默认类型处理
		6.3、log_format : 定义日志格式
			log_format json '{"@timestamp":"$time_iso8601",'
                  '"host":"$server_addr",'
                  '"service":"nginxTest",'
                  '"trace":"$upstream_http_ctx_transaction_id",'
                  '"log":"log",'
                  '"clientip":"$remote_addr",'
                  '"remote_user":"$remote_user",'
                  '"request":"$request",'
                  '"http_user_agent":"$http_user_agent",'
                  '"size":$body_bytes_sent,'
                  '"responsetime":$request_time,'
                  '"upstreamtime":"$upstream_response_time",'
                  '"upstreamhost":"$upstream_addr",'
                  '"http_host":"$host",'
                  '"url":"$uri",'
                  '"domain":"$host",'
                  '"xff":"$http_x_forwarded_for",'
                  '"referer":"$http_referer",'
                  '"status":"$status"}';
    		access_log /var/log/nginx/access.log json ;
    	6.4、sendfile : 高效读取文件
    	6.5、keepalive_timeout : 长连接保持连接的
    		HTTP 1.0 短链接
    		HTTP 1.1 长连接
    	6.6、server : 网址模块
    		6.6.1、listen : 监听的端口
    		6.6.2、server_name : 定义域名
    		6.6.3、location : 访问路径
    			6.6.3.1、root : 指定网址路径
    			6.6.3.2、index : 指定网址的索引文件

7、超级玛丽和象棋

1、上传代码

2、编辑配置文件
[root@web01 conf.d]# vim /etc/nginx/conf.d/game.conf 
server {
    listen 80;
    server_name game.test.com;
    location / {
        root /opt/Super_Marie;
        index index.html;
    }
}

3、测试配置文件是否正常
[root@web01 conf.d]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

4、重启Nginx
[root@web01 conf.d]# systemctl restart nginx 

5、域名解析
C:\Windows\System32\drivers\etc\hosts
172.16.1.7 game.test.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

go&Python

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值