HTTP Connection тақырыптарын үтірмен бөлінген токендер ретінде талдау
Форвард прокси бір HTTP/1.1 өрісінде keep-alive мен Upgrade кездестіргенде, әрбір Connection опциясын регистрге қарамастан талдаңыз.
Бұл мәндер бір режимнің бәсекелес жазылымдары емес:
Connection: Upgrade
Connection: keep-alive, UpgradeЕкіншісі екі қосылым опциясын тізеді. HTTP Connection-ды үтірмен бөлінген тізім ретінде анықтайды, опция атаулары регистрге тәуелді емес. Бүкіл мәнді дәл Upgrade жолымен салыстыратын код осы опцияны қамтитын жарамды тізімді өткізіп жібереді.
Қарапайым жіберу үшін HTTP делдалы кіріс өрісін талдайды, өз опциялары атаған өрістерді жояды, содан кейін Connection-ның өзін жояды немесе оны келесі қосылым үшін делдалдың өз басқару опцияларымен алмастырады.
Тек қатты кодталған Keep-Alive өрісін жою жеткіліксіз. Хабарлама тізімде қосылымға тән басқа өрісті атауы мүмкін және бұл өріс қарапайым жіберуге ағып кетпеуі керек.
Протоколды жаңартуды қолдау екі қосылымды және жаңа протоколды әдейі өңдеуді талап етеді. Кіріс Upgrade тақырыптарын соқыр көшіру — бұл берілістің іске асырылуы емес.
Бір браузер жұмыс істеп, екіншісі сәтсіз болғанда, делдалдың екі жағындағы нақты өріс мәндерін салыстырыңыз. Бір токен мен екі токеннен тұратын тізім арасындағы айырмашылық браузерден басқа браузердің дәл пішімдеуін қайталауды талап етпей-ақ талдау қатесін аша алады.
Бұл прокси талдайтын HTTP хабарламаларына қатысты. Қарапайым HTTPS CONNECT туннелі шифрланған сайттың Connection өрісін сол проксиге ашпайды.