当前位置:网站首页>The process of browser accessing the website
The process of browser accessing the website
2022-07-03 04:49:00 【A rookie who has been studying hard】
The process of browser accessing the website :
1、DNS analysis :
(1) Why DNS analysis ?
Domain name resolution is to point the domain name to the website space IP, Let people through the registered domain name can easily access a website service . For websites , After the process of domain name resolution , Netizens can easily and conveniently visit the website through this domain name . If it is not parsed , The domain name cannot be used normally .
(2) System cache query
(3) Router cache 、ISP cache
(4)DNS recursive query
2、TCP Connect :
(1) Three handshakes
(2) Four breakups
3、HTTP request :
Once complete http Request processing :
(1) Establishing a connection : Receive or reject connection requests
(2) Receiving request : The process of receiving a request for a resource in a client request message
(3) Processing requests : The server parses the request message , And obtain the requested resource and request method and other related information , According to the method , resources , The header and optional body parts handle the request
Common requests Method: GET、POST、HEAD、PUT、DELETE、TRACE、OPTIONS
(4) Access resources : The server obtains the resource requested in the request message web The server , That is, it's stored web Resource server , Responsible for providing static resources requested by the other party to the requester , Or resources generated after dynamic operation
(5) Build response message : once Web The server identifies resources in addition to resources , To perform the actions described in the request method , And return the response message . The response message contains the response status code 、 Response head , If the response body is generated , It also includes the response body
1) Response subject : If the transaction produces a response body , Put the content in the response message and send it back . The response message usually includes : Describes the response body MIME Type of Content-Type The first one 、 Describes the length of the response body Content-Length、 The main content of the actual message
2)URL Redirect :web The response of the service build is not a resource requested by the client , It's another access path to the resource
3)MIME type : Web The server is responsible for determining the response subject MIME type . There are many ways to configure the server MIME Type and resource management
(6) Send response message :Web When the server sends data through the connection, it also faces the same problems as receiving data . The server may have many connections to various clients , Some are idle , Some are sending data to the server , Some are sending back response data to clients . The server records the status of the connection , Special attention should also be paid to the handling of persistent connections . For non persistent connections , The server should send the whole message after , Close the connection at this end of yourself . For persistent connections , The connection may remain open , under these circumstances , The server should calculate correctly Content-Length The first one , Otherwise, the client will not know when the response ends
(7) Log : Last , When the transaction ends ,Web The server will add an entry to the log file , To describe the executed transaction
HTTP The status code is used to represent the web server HTTP Responding to the state of 3 Digit code .
common HTTP Status code :
200 ( success ) The server has successfully processed the request . Usually , This means that the server provides the requested web page .
301 ( A permanent move ) The requested page has been permanently moved to a new location . The server returned this response ( Yes GET or HEAD Response to the request ) when , The requester is automatically moved to a new location .
302 ( Temporary movement ) The server is currently responding to requests from pages in different locations , But the requester should continue to use the original location for future requests .
400 ( Wrong request ) The server does not understand the syntax of the request .
403 ( prohibit ) Server rejects request .
404 ( Not found ) The server could not find the requested page .
500 ( Server internal error ) Server encountered an error , Unable to complete request .
502 ( Bad Gateway ) Server as gateway or proxy , Invalid response received from upstream server .
503 ( Service not available ) The server is currently unavailable ( Maintenance due to overload or shutdown ). Usually , It's just a temporary situation .
504 ( gateway timeout ) Server as gateway or proxy , But the request was not received from the upstream server in time .
4、 The rendering principle of browser :
(1) structure DOM
(2) structure CSSOM Trees
(3) Build the render tree
(4) synthesis 、 draw
Browser workflow :
(1) The browser first uses HTTP Agreement or HTTPS agreement , Request a page from the server
(2) Come back with the request HTML The code is parsed , To build a DOM Trees
(3) Calculation DOM On the tree CSS attribute
(4) according to CSS Attribute to render elements one by one , Get the bitmap in memory
(5) An optional step is to synthesize the bitmap , This will greatly increase the speed of subsequent painting
(6) After synthesis , Then draw it on the interface .
The responsibility of the browser process : Mainly responsible for user interaction 、 Sub process management and file storage
Responsibilities of network process : Provide network download function for rendering process and browser process
Responsibility of rendering process : Download from the Internet HTML、JavaScript、CSS、 Pictures and other resources are parsed into pages that can be displayed and interacted
边栏推荐
- 4 years of experience to interview test development, 10 minutes to end, ask too
- I've been in software testing for 8 years and worked as a test leader for 3 years. I can also be a programmer if I'm not a professional
- Use Sqlalchemy module to obtain the table name and field name of the existing table in the database
- [SQL injection] joint query (the simplest injection method)
- Market status and development prospect forecast of global heat curing adhesive industry in 2022
- Library management system based on SSM
- Hj35 serpentine matrix
- Market status and development prospects of the global autonomous marine glider industry in 2022
- Flutter monitors volume to realize waveform visualization of audio
- "Niuke brush Verilog" part II Verilog advanced challenge
猜你喜欢
![[luatos sensor] 1 light sensing bh1750](/img/70/07f29e072c0b8630f92ec837fc12d5.jpg)
[luatos sensor] 1 light sensing bh1750

MediaTek 2023 IC written examination approved in advance (topic)

并发操作-内存交互操作

Analysis of proxy usage of ES6 new feature

C language self-made Games: Sanzi (tic tac toe chess) intelligent chess supplement

stm32逆向入门

Thesis reading_ Chinese NLP_ ELECTRA

Games101 Lesson 9 shading 3 Notes

2022 new examination questions for the main principals of hazardous chemical business units and examination skills for the main principals of hazardous chemical business units

关于开学的准备与专业认知
随机推荐
[SQL injection] joint query (the simplest injection method)
Hj35 serpentine matrix
Valentine's day limited withdrawal guide: for one in 200 million of you
Summary of training competition (Lao Li's collection of questions)
Learning record of arouter principle
[set theory] relational representation (relational matrix | examples of relational matrix | properties of relational matrix | operations of relational matrix | relational graph | examples of relationa
Review the old and know the new: Notes on Data Science
Php+mysql registration landing page development complete code
Market status and development prospects of the global IOT active infrared sensor industry in 2022
2022 chemical automation control instrument examination summary and chemical automation control instrument certificate examination
4 years of experience to interview test development, 10 minutes to end, ask too
Career planning of counter attacking College Students
Caijing 365 stock internal reference: what's the mystery behind the good father-in-law paying back 50 million?
[luatos sensor] 2 air pressure bmp180
Leetcode simple question: the key with the longest key duration
[set theory] binary relationship (binary relationship notation | binary relationship from a to B | number of binary relationships | example of binary relationship)
Literature reading_ Research on the usefulness identification of tourism online comments based on semantic fusion of multimodal data (Chinese Literature)
[USACO 2009 Dec S]Music Notes
Learn to use the idea breakpoint debugging tool
Market status and development prospect prediction of the global autonomous hybrid underwater glider industry in 2022