HTTP协议
HTTP协议
优惠券已抵扣
余额抵扣
还需支付
¥39.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
scan724
这个作者很懒,什么都没留下…
展开
-
403 Forbidden
node2:/etc/nginx#curl http://192.168.137.3:2443/<html><head><title>403 Forbidden</title></head><body><center><h1>403 Forbidden</h1></center><hr><center>nginx/1.17.9</center>原创 2022-03-16 09:40:29 · 1186 阅读 · 1 评论 -
502 Bad Gateway
log_format main '[--$remote_addr--] - $remote_user [$time_local] "$request" [$status, $request_time, $upstream_response_time ] $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; log_format rootlog '[--$remote_addr-...原创 2022-03-16 09:06:28 · 3996 阅读 · 0 评论 -
openresty的安装和使用
openresty的安装和使用1,简介 OpenResty(又称:ngx_openresty) 是一个基于 NGINX 的可伸缩的 Web 平台,是一个强大的 Web 应用服务器,在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。目标是让你的 Web 服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL,PostgreSQL,~Memca.原创 2020-06-15 18:54:33 · 427 阅读 · 0 评论 -
nginx 7层全量转发
upstream micorapp { server 2.1.105.33:1080 max_fails=1 fail_timeout=30s; server 20.1.15.3:1080 max_fails=1 fail_timeout=30s; keepalive 16;}server {listen 1080;server_name tlchat.zjtlcb.com; # domain 域名改为 rcx api 所准备的域名ssl on;ssl_certificate s.原创 2020-06-15 17:43:54 · 747 阅读 · 0 评论 -
nginx ssl 透传
nginx 4层ssl:./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --with-stream_ssl_preread_module --with-stream_ssl_modulenode2:/root/nginx-1.17.9#/usr/local/nginx/sbin/nginx -c /etc/nginx/nginx_900.原创 2020-06-13 19:59:17 · 2157 阅读 · 0 评论 -
nginx卸载ssl django明文
前端nginx加密:events { use epoll; worker_connections 65535; multi_accept on; }http { include mime.types; default_type application/octet-stream; server_names_hash_bucket_size 256; ..原创 2020-06-13 18:45:22 · 300 阅读 · 0 评论 -
nginx 7层全转发
May 31, 2020 - 22:17:11Django version 1.11.9, using settings 'mysite.settings'Starting development server at http://0.0.0.0:9000/Quit the server with CONTROL-C.[31/May/2020 22:17:21] "GET /test111/ HTTP/1.0" 200 16192.168.137.1 - - [01/Jun/2020:06:..原创 2020-06-13 18:30:45 · 742 阅读 · 0 评论 -
nginx f5卸载https
如果七层的,在nginx就卸载掉了除非四层透传过去nginx卸载掉 有单独配置吗不需要配置过了f5或者nginx自动就卸载https了原创 2020-06-13 12:24:48 · 877 阅读 · 0 评论 -
HTTP请求追踪
原创 2020-04-30 14:29:06 · 1410 阅读 · 0 评论 -
多了“Client Hello”“Server Hello”等新的数据包
多了“Client Hello”“Server Hello”等新的数据包原创 2020-04-30 13:53:02 · 770 阅读 · 0 评论 -
nginx 访问日志出现奇怪的密文
192.168.137.2node1:/etc/nginx#cat /etc/nginx/nginx.confworker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;events { worker_...原创 2020-04-30 09:21:57 · 771 阅读 · 0 评论 -
nginx 开启x-forward
192.168.137.2node1:/etc/nginx#cat /etc/nginx/nginx.confworker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;events { worker_...原创 2020-04-29 11:57:16 · 1935 阅读 · 0 评论 -
http 304
#access_log logs/host.access.log main;server{ listen 8090; server_name localhost; location / { root /var/www/demo/html; in...原创 2020-04-23 12:28:34 · 201 阅读 · 0 评论 -
$request_filename
192.168.137.1 - - [07/Apr/2020:09:35:54 +0800] "GET /backoffice/ HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.3...原创 2020-04-22 20:26:41 · 870 阅读 · 0 评论 -
ngInx 配置多个server
nginx 配置多个server:events { use epoll; worker_connections 65535; multi_accept on; }http { include mime.types; default_type application/oct...原创 2020-04-20 10:25:39 · 1729 阅读 · 0 评论 -
Provisional headers are shown 说明走了缓存没有发送请求
4. 该数据直接采用了缓存,并没有发送请求Provisional headers are shownReferer: http://192.168.137.3:8090/backoffice/User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome...原创 2020-04-19 14:20:00 · 717 阅读 · 0 评论 -
Cache-Control
可以看到上图中。max-age的为3600秒,也就是我们在Nginx设置的一个小时。这样浏览器就会根据用户本地时间来计算一个小时后,再让缓过期。还有一个小细节,不知道你之前是否注意到。浏览器和Web服务器之间协商的时间都是GMT时间,而我们中国实用的时间是GMT+8的时区,所以我们看到的时候比实际上少了8个小时,但是这丝毫不影响他们之间的协商。Cache-control除了max-age...原创 2020-04-18 15:36:29 · 808 阅读 · 0 评论 -
nginx 配置访问静态页面
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|css|htm|html)$ { root /var/www/html/backoffice; expires 180d; } }}可以访问:http://192.168.137.3:8090/http://...原创 2020-04-18 14:55:16 · 808 阅读 · 0 评论 -
正确使用 nginx expires缓存css
Expires我们先回过头在看之前的两种缓存协商办法,浏览器给Web服务器发送HTTP请求来询问是否可以使用缓存。如果Web服务器告诉浏览器使用缓存,那么浏览器就直接使用缓存呈现给用户,你是否发现,这个询问的HTTP请求是不是也占用了Web服务器的资源,即便不产生任何的数据传输,用户还是需要等待这个请求发送到响应完毕。那么能不能不发送HTTP请求呢?比如第一次浏览器请求完毕后,Web服务器...原创 2020-04-18 14:02:39 · 282 阅读 · 0 评论 -
expires 1h 为什么没生效呢?
Expires我们先回过头在看之前的两种缓存协商办法,浏览器给Web服务器发送HTTP请求来询问是否可以使用缓存。如果Web服务器告诉浏览器使用缓存,那么浏览器就直接使用缓存呈现给用户,你是否发现,这个询问的HTTP请求是不是也占用了Web服务器的资源,即便不产生任何的数据传输,用户还是需要等待这个请求发送到响应完毕。那么能不能不发送HTTP请求呢?比如第一次浏览器请求完毕后,Web服务器...原创 2020-04-18 13:25:19 · 658 阅读 · 0 评论 -
浏览器 Last-Modified 和 Etag
Last-Modified 和 Etag这里我不准备再次截图,读者可以自己使用firebug观察下etag的工作方式,我要强调一下就是同时存在Etag和Last-Modified的时候,Etag的优先级要高我们现在要介绍另外一个缓存协商的方法,因为在某些场景下Last-Modified可能工作的并不愉快,比如有一种情况,我们的Web服务器上面的文件最后修改时间会频繁的变动,但是文件内容却...原创 2020-04-18 13:08:29 · 724 阅读 · 0 评论 -
nginx expires 30s 什么概念
location /backoffice { root /var/www/html; index index.html index.htm; expires 30s; }原创 2020-04-17 14:00:18 · 407 阅读 · 0 评论 -
浏览器缓存机制
如果资源没有变,服务器就回应一个“304 Not Modified”,表示缓存依然有效,浏览器就可以更新一下有效期,然后放心大胆地使用缓存了。条件请求一共有 5 个头字段,我们最常用的是“if-Modified-Since”和“If-None-Match”这两个。需要第一次的响应报文预先提供“Last-modified”和“ETag”,然后第二次请求时就可以带上缓存里的原值,验证资源...原创 2020-04-17 11:29:32 · 151 阅读 · 0 评论 -
no-store:不允许缓存,用于某些变化非常频繁的数据,例如秒杀页面;
no-store:不允许缓存,用于某些变化非常频繁的数据,例如秒杀页面;no-cache:它的字面含义容易与 no-store 搞混,实际的意思并不是不允许缓存,而是可以缓存,但在使用之前必须要去服务器验证是否过期,是否有最新的版本;must-revalidate:又是一个和 no-cache 相似的词,它的意思是如果缓存不过期就可以继续使用,但过期了如果还想用就必须去服务器验证。...原创 2020-04-17 10:18:22 · 2881 阅读 · 0 评论 -
服务端缓存
@cache_control( max_age=31)def displayarray(req): return render_to_response('displayarray.html') 浏览器发现缓存无数据,于是发送请求,向服务器获取资源;服务器响应请求,返回资源,同时标记资源的有效期;浏览器缓存资源,等待下次重用。服务器标记资源有效期使用的头字段是“C...原创 2020-04-17 08:57:50 · 209 阅读 · 0 评论 -
nginx 缓存
下一次再有相同的请求,代理服务器就可以直接发送 304 或者缓存数据,不必再从源服务器那里获取。这样就降低了客户端的等待时间,同时节约了源服务器的网络带宽。...原创 2020-04-16 16:57:35 · 163 阅读 · 0 评论 -
nginx 重定向
location /image { rewrite ^/image/(.*)$ http://baidu.com/$1;}location /test { rewrite ^/test$ http://sohu.com/;}原创 2020-04-16 16:06:22 · 187 阅读 · 0 评论 -
nginx X-Forwarded-For
nginx :X-Forwarded-For location ^~ /bbb {proxy_pass http://backend2/; proxy_connect_timeout 300; proxy_send_timeout 300; proxy_read_timeout 300; proxy_set_header Host $host...原创 2020-04-16 14:07:39 · 779 阅读 · 0 评论 -
nginx 配置模板
#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events {worker_connections 1024;}http {in...原创 2020-04-16 12:41:27 · 180 阅读 · 0 评论 -
nginx 配置7层代理
node2:/etc/nginx#cat /etc/nginx/nginx.confevents { use epoll; worker_connections 65535; multi_accept on; }http { include mime.types; defau...原创 2020-04-16 12:14:43 · 490 阅读 · 0 评论 -
django 页面缓存
页面缓存:@cache_control( max_age=131)def displayarray(req): return render_to_response('displayarray.html') node2:/django/mysite#while :; do curl 'http://192.168.137.3:9000/displayarra...原创 2020-04-15 16:02:09 · 255 阅读 · 0 评论 -
“Expires”俗称“过期时间”,用的是绝对时间点
Cookie 的属性:Cookie 的有效期可以使用 Expires 和 Max-Age 两个属性来设置。SESSION_ENGINE = 'django.contrib.sessions.backends.db'SESSION_EXPIRE_AT_BROWSER_CLOSE = TrueCACHE_MIDDLEWARE_SECONDS=120CACHE_MIDDLEWARE_...原创 2020-04-15 13:40:42 · 3165 阅读 · 0 评论 -
请求头字段 Cookie
请求头字段 Cookie原创 2020-04-15 11:31:37 · 426 阅读 · 0 评论 -
Cookie 的工作过程
Cookie 的工作过程这要用到两个字段:响应头字段 Set-Cookie 和请求头字段 Cookie。原创 2020-04-15 11:28:20 · 295 阅读 · 0 评论 -
Location
这里出现了一个新的头字段“Location: /index.html”,它就是 301/302 重定向跳转的秘密所在。Location: /index/?next=/addMachine/“Location”字段属于响应字段,必须出现在响应报文里。但只有配合 301/302 状态码才有意义,它标记了服务器要求重定向的 URI,这里就是要求浏览器跳转到“index.html”...原创 2020-04-15 10:52:28 · 582 阅读 · 0 评论 -
302 重定向
由服务器来发起的,浏览器使用者无法控制,相对地就可以称为“被动跳转”,这在 HTTP 协议里有个专门的名词,叫做“重定向”(Redirection)。重定向的过程其实之前我们就已经见过重定向了,在第 12 讲里 3××状态码时就说过,301 是“永久重定向”,302 是“临时重定向”,浏览器收到这两个状态码就会跳转到新的 URI。...原创 2020-04-15 10:48:17 · 3772 阅读 · 1 评论 -
HTTP 长连接
HTTP 长连接:由于长连接对性能的改善效果非常显著,所以在 HTTP/1.1 中的连接都会默认启用长连接。不需要用什么特殊的头字段指定,只要向服务器发送了第一次请求,后续的请求都会重复利用第一次打开的 TCP 连接,也就是长连接,在这个连接上收发数据。Connection: keep-alive服务器端通常不会主动关闭连接,但也可以使用一些策略。拿 Nginx 来举例,它有...原创 2020-04-15 10:18:45 · 286 阅读 · 0 评论 -
Transfer-Encoding: chunked
下面我们来看一下分块传输的编码规则,其实也很简单,同样采用了明文的方式,很类似响应头。1.每个分块包含两个部分,长度头和数据块;UNIX 好像只使用 LF(0a)0d------回车符版号-权-----"/r" 0a------换行符号------"/n"2.长度头是以 CRLF(回车换行,即\r\n)结尾的一行明文,用 16 进制数字表示长度;数据块紧跟在长度头后,...原创 2020-04-15 09:59:04 · 892 阅读 · 0 评论 -
判断用户是否登录
@login_required(login_url='/index/')def addMachine(req): return render_to_response('addMachine.html')原创 2020-04-14 17:47:43 · 295 阅读 · 0 评论 -
cookie中的session_id 和后台的session_id
原创 2020-04-14 16:46:54 · 303 阅读 · 0 评论