飞天使-linux操作的一些技巧与知识点3-http的工作原理

文章目录

        • http工作原理
        • nginx的正向代理和反向代理的区别
        • 一个小技巧
        • dig 命令巧用

http工作原理

飞天使-linux操作的一些技巧与知识点3-http的工作原理_第1张图片

http1.0 协议 使用的是短连接,建立一次tcp连接,发起一次http的请求,结束,tcp断开
http1.1 协议使用的是长连接,建立一次tcp的连接,发起多次http的请求,结束,tcp断开

飞天使-linux操作的一些技巧与知识点3-http的工作原理_第2张图片

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 ];then
    systemctl start nginx
    sleep 2
    #2.等待2秒后再次获取一次Nginx状态
	nginxpid=$(pidof nginx | wc -l)
    #3.再次进行判断, 如Nginx还不存活则停止Keepalived,让地址进行漂移,并退出脚本
    if [ $nginxpid -eq 0 ];then
        systemctl stop keepalived
	pkill keepalived
   fi
fi
dig 命令巧用
dig @8.8.8.8 www.baidu.com 
用哪个ip来解析百度网址

你可能感兴趣的:(linux,运维,服务器)