ΠΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΠΈΠ· ΠΠ°ΠΌΠ±ΡΡΠ³ΡΠΊΠΎΠ³ΠΎ ΠΈ ΠΡΠ»ΡΠ½ΡΠΊΠΎΠ³ΠΎ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠΎΠ²
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ²ΡΠ·Π°Π½Π° Ρ ΡΠ΅ΠΌ, ΡΡΠΎ CDN ΠΊΡΡΠΈΡΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ, Π½ΠΎ ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° http-ΡΠ΅ΡΠ²Π΅Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΡΠΈΠ±ΠΊΡ. ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°Ρ Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΠ΅ΡΠ²Π΅Ρ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ 400 (Bad Request), ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ IIS, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ΄Π°ΡΡ Π΄Π»Ρ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΈΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΎΡΠΈΠ±ΠΊΡ 404 (Not Found). Π‘ΡΠ°Π½Π΄Π°ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΈΠ±ΠΊΠΈ Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ 404 (Not Found), 405 (Method Not Allowed), 410 (Gone) ΠΈ 501 (Not Implemented), Π½ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ CDN ΡΠ°ΠΊΠΆΠ΅ ΠΊΡΡΠΈΡΡΡΡ ΠΈ ΠΎΡΠ²Π΅ΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ 400 (Bad Request), ΠΊΠΎΡΠΎΡΡΠΉ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°.
ΠΡΠ°ΠΊΡΡΡΠΈΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΠ·Π²Π°ΡΡ Π½Π° ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΠΎΠΌ ΡΠ΅ΡΡΡΡΠ΅ Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠΈ «400 Bad Request» ΡΠ΅ΡΠ΅Π· ΠΎΡΠΏΡΠ°Π²ΠΊΡ Π·Π°ΠΏΡΠΎΡΠ° Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡΠΎΡΠΌΠ»Π΅Π½Π½ΡΠΌΠΈ HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ. ΠΠ°Π½Π½ΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π½Π΅ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ CDN, ΠΏΠΎΡΡΠΎΠΌΡ Π² ΠΊΡΡ ΠΏΠΎΠΏΠ°Π΄ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΈ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Π΄ΠΎ ΠΈΡΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠΌΠ°ΡΡΠ° ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ ΠΎΡΠΈΠ±ΠΊΠΈ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ ΡΡΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΡΠ°ΠΉΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΎΡΠ΄Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
ΠΠ»Ρ ΠΏΡΠΈΠ½ΡΠΆΠ΄Π΅Π½ΠΈΡ HTTP-ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΊ Π²ΠΎΠ·Π²ΡΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ° Π°ΡΠ°ΠΊΠΈ:
- HMO (HTTP Method Override) — Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π·Π°ΠΏΡΠΎΡΠ° ΡΠ΅ΡΠ΅Π· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ «X-HTTP-Method-Override», «X-HTTP-Method» ΠΈΠ»ΠΈ «X-Method-Override», ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ, Π½ΠΎ Π½Π΅ ΡΡΠΈΡΡΠ²Π°Π΅ΠΌΡΠ΅ Π² CDN. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ «GET» Π½Π° Π·Π°ΠΏΡΠ΅ΡΡΠ½Π½ΡΠΉ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ «DELETE» ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡΠΉ Π΄Π»Ρ ΡΡΠ°ΡΠΈΠΊΠΈ ΠΌΠ΅ΡΠΎΠ΄ «POST»;
- HHO (HTTP Header Oversize) — Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΏΡΠ΅Π²ΡΡΠ°Π» Π»ΠΈΠΌΠΈΡ ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°Π» ΠΏΠΎΠ΄ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ CDN. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Apache httpd ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² 8 ΠΠ, Π° CDN Amazon Cloudfront Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π΄ΠΎ 20 ΠΠ;
- HMC (HTTP Meta Character) — Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΡΠ°Π²ΠΈΡΡ Π² Π·Π°ΠΏΡΠΎΡ ΡΠΏΠ΅ΡΡΠΈΠΌΠ²ΠΎΠ»Ρ (\n, \r, \a), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΈΡΠ°ΡΡΡΡ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΌΠΈ Π½Π° ΠΈΡΡ
ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅, Π½ΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡΡΡ Π² CDN.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½ Π°ΡΠ°ΠΊΠ΅ ΠΎΠΊΠ°Π·Π°Π»ΡΡ CDN CloudFront, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Amazon Web Services (AWS). Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Amazon ΡΠΆΠ΅ ΡΡΡΡΠ°Π½ΠΈΠ»Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΠ΅Ρ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ, Π½ΠΎ Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π·Π°ΡΠΈΡΡ, ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΡ
ΠΌΠ΅ΡΡΡΠ΅Π². ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ°ΠΊΠΆΠ΅ Π·Π°ΡΡΠΎΠ½ΡΠ»Π° Cloudflare, Varnish, Akamai, CDN77 ΠΈ
Fastly, Π½ΠΎ Π°ΡΠ°ΠΊΠ° ΡΠ΅ΡΠ΅Π· Π½ΠΈΡ
ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° ΡΠ΅Π»Π΅Π²ΡΠΌΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΡΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ IIS, ASP.NET,
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΠ°ΠΊΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ°ΠΉΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° «Cache-Control: no-store», Π·Π°ΠΏΡΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠΎΠ². Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
CDN, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²
CloudFront ΠΈ Akamai, ΠΌΠΎΠΆΠ½ΠΎ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠ»Ρ Π·Π°ΡΠΈΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΠΆΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΊΡΠ°Π½Ρ Π΄Π»Ρ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (WAF, Web Application Firewall), Π½ΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²Π½Π΅Π΄ΡΡΡΡΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ CDN ΠΏΠ΅ΡΠ΅Π΄ Ρ
ΠΎΡΡΠ°ΠΌΠΈ, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΠΈΠΌΠΈ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru