文章目录 http工作原理 nginx的正向代理和反向代理的区别 一个小技巧 dig 命令巧用
http工作原理
http1.0 协议 使用的是短连接,建立一次tcp连接,发起一次http的请求,结束,tcp断开
http1.1 协议使用的是长连接,建立一次tcp的连接,发起多次http的请求,结束,tcp断开
nginx的正向代理和反向代理的区别
正向代理代理对象是客户端
反向代理代理对象是服务端location中还有一种思路location / {
if ( $http_host ~* "zh" ) { set $language zh;
}
if ( $http_host ~* "jp" ) {set $language jp;}rewrite ^/$ http://url.xxxx.com/$language/ permanent;}
}
不同的请求跳转到不同的路由下server {listen 80;server_name url.xxxx.com;root /code;
if ($http_accept_language ~* "zh-CN|zh") {set $language /zh;}
if ($http_accept_language ~* "en") { set $language /en;
}
rewrite ^/$ /$language; # 根据语言不同,选择不同的站点location / {index index.html;
} }维护时候页面的一个技巧
set $ip 0;
# 在server层下设定ip变量值为0
if ($remote_addr = "10.0.0.101|10.0.0.102") {
set $ip 1; }
#如果来源ip是 101或者102 ,则 $ip 的值为1
if ($ip = 0) {rewrite ^(.*)$ /wh.html break;}
#如果来源ip 不是 101 ,102 则跳转到 /code/wh.html 页面,否则不做任何处理某个页面只允许公司网络访问,其他的都为0
location /admin {
set $ip 0;
if ($remote_addr = "61.149.186.152|139.226.172.254" ) {
set $ip 1; }
if ($ip = 0){ return 500;
}
}
一个小技巧
#!/bin/sh
nginxpid=$(pidof nginx | wc -l)
#1.判断Nginx是否存活,如果不存活则尝试启动Nginx
if [ $nginxpid -eq 0 ];thensystemctl start nginxsleep 2#2.等待2秒后再次获取一次Nginx状态nginxpid=$(pidof nginx | wc -l)#3.再次进行判断, 如Nginx还不存活则停止Keepalived,让地址进行漂移,并退出脚本if [ $nginxpid -eq 0 ];thensystemctl stop keepalivedpkill keepalivedfi
fi
dig 命令巧用
dig @8.8.8.8 www.baidu.com
用哪个ip来解析百度网址