ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π±ΡΠ°ΠΉΡ Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ HTTP Π·Π°Π³Π»Π°Π²ΠΊΠΈΡΠ΅. ΠΠ½ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΈ ΡΠ° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΡΠ° Π·Π° Π·Π°Π³Π»Π°Π²ΠΈΡΡΠ°. Π’ΡΠΊ ΡΠΌΠ΅ ΠΎΠ±ΠΎΠ±ΡΠΈΠ»ΠΈ Π½Π°ΡΡΡΠΏΠ°Π½ΠΈΡ ΠΎΠΏΠΈΡ ΠΈ RFC Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ. ΠΡΠΊΠΎΠΈ ΠΎΡ Π·Π°Π³Π»Π°Π²ΠΈΡΡΠ° ΡΠ° Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΈ, Π΄ΡΡΠ³ΠΈ ΡΠ° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ, Π° Π½ΡΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ°Ρ ΠΎΠ±ΡΡΠΊΠ²Π°Π½Π΅ ΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ. ΠΠ°ΠΏΡΠ°Π²ΠΈΡ
ΠΌΠ΅ ΠΊΠΎΡΠ΅ΠΌΠ½Π° ΡΠ°Π½ΡΠ° Π·Π°
- Π·Π°Π΄Π°ΠΉΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈΡΠ΅ Π·Π°Π³Π»Π°Π²ΠΊΠΈ;
- Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π°Π³Π»Π°Π²ΠΊΠΈ;
- ΠΏΠΎΡΠΎΡΠ΅ΡΠ΅ Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° HTTP ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°: 1.0, 1.1, 2 (ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π΄Π°Π»ΠΈ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° HTTP/2);
- ΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Π° Π½Π° Π·Π°ΡΠ²ΠΊΠ°, Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ ΠΈ ΠΏΠΎΡΡΠ΄Π°Π½Π½ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½ΠΈ Π΄ΠΎ ΡΡΡΠ²ΡΡΠ°;
- Beanbag ΡΡΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎΡΡΡΠ° Π½Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈ If-Modified-Since, If-None-Match, Π°ΠΊΠΎ ΠΎΡΠ³ΠΎΠ²ΠΎΡΡΡ Π½Π° ΡΡΡΠ²ΡΡΠ° ΡΡΠ΄ΡΡΠΆΠ° Last-Modified ΠΈΠ»ΠΈ ETag.
ΠΠΈΠ΅ Π½Π΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΠΈΡΠ°ΠΌΠ΅ Π΄Π° ΡΠΌΠ΅ ΠΈΡΡΠΈΠ½Π°ΡΠ° ΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π° ΠΈΠ½ΡΡΠ°Π½ΡΠΈΡ. ΠΠ° ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΠΈ Π·Π° ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ. ΠΠΎ ΡΠ°Π·ΠΈ ΡΡΠ»ΡΠ³Π° ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ ΡΠΎΡΠ½ΠΎ Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΎΠ±ΡΡΠ½Π΅ΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΠΈ Π±ΡΠ΄Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π° ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°ΡΠ΅ Π·Π°Π³Π»Π°Π²ΠΈΡΡΠ° ΡΠΈ. ΠΠΎ-Π΄ΠΎΠ»Ρ Π΅ Π΄Π°Π΄Π΅Π½ ΡΠΏΠΈΡΡΠΊ Π½Π° ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ±ΡΡΡΠ° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°. ΠΠ°ΡΠΎ ΡΠ°ΠΊΠ°, ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅
ΠΠ°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΈ Π·Π°Π³Π»Π°Π²ΠΊΠΈ
- ΠΠ°ΡΠ°
- Content-Type, ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ Π½Π°Π±ΠΎΡ ΠΎΡ Π·Π½Π°ΡΠΈ Π·Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, Π·Π° ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π½Π΅ utf-8
- Content-Encoding ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ Π·Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅
ΠΡΡΠ°ΡΠ΅Π»ΠΈ ΠΈ Π½Π΅Π½ΡΠΆΠ½ΠΈ Π·Π°Π³Π»Π°Π²ΠΊΠΈ
- Π‘ΡΡΠ²ΡΡ Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ΅Π± ΡΡΡΠ²ΡΡΠ°
- X-Power-By
- X_ASPNET-Π²Π΅ΡΡΠΈΡ
- ΠΠ·ΡΠΈΡΠ°
- Pragma
- P3P
- ΡΡΠ΅Π·
- X-UA-ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌ
ΠΠ΅Π»Π°ΡΠ΅Π»Π½ΠΈ Π·Π°Π³Π»Π°Π²ΠΊΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- X-Content-Type-Options
- X-XSS-ΠΠ°ΡΠΈΡΠ°
- Π‘ΡΡΠΎΠ³Π° ΡΡΠ°Π½ΡΠΏΠΎΡΡΠ½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
- Referrer-ΠΠΎΠ»ΠΈΡΠΈΠΊΠ°
- ΠΠΎΠ»ΠΈΡΠΈΠΊΠ° Π·Π° Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈΡΠ΅
- Content-Security-Policy ΠΈΠ»ΠΈ Content-Security-Policy-Report-Only Π·Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ ΠΈ ΡΡΠΈΠ»ΠΎΠ²Π΅.
Π₯Π΅Π΄ΡΡΠΈ Π·Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅
ΠΠ°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π·Π° ΡΡΠ°ΡΠΈΡΠ½ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Ρ Π΄ΡΠ»ΡΠ³ ΠΆΠΈΠ²ΠΎΡ Π½Π° ΠΊΠ΅ΡΠ° ΠΈ ΡΠΈΠ»Π½ΠΎ ΠΆΠ΅Π»Π°ΡΠ΅Π»Π½ΠΎ Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ Ρ ΠΊΡΠ°ΡΡΠΊ ΠΆΠΈΠ²ΠΎΡ Π½Π° ΠΊΠ΅ΡΠ°.
- ΠΠΎΡΠ»Π΅Π΄Π½ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°Π½
- ETag
- ΠΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΊΠ΅ΡΠ°
- ΠΠ°ΡΠΈ
- ΠΠ°ΠΆΠ½ΠΎ Π΅ ΡΡΡΠ²ΡΡΡΡ Π΄Π° ΠΎΡΠ³ΠΎΠ²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π½Π° Π·Π°Π³Π»Π°Π²ΠΊΠΈΡΠ΅: If-Modified-Since ΠΈ If-None-Match
HTTP / 2
Π‘Π΅Π³Π° ΡΡΡΠ²ΡΡΡΡ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° HTTP/2. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΡΠ»ΡΠ³Π°ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΡΡΡΠ²ΡΡΠ° ΡΡΠ΅Π· HTTP/2. ΠΠΊΠΎ Π²Π°ΡΠΈΡΡ ΡΡΡΠ²ΡΡ Π½Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° HTTP/2, ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ HTTP/1.1.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com