рд╡рд┐рднрд┐рдиреНрди рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ HTTP рд╣реИрдбрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди

рдирдорд╕реНрдХрд╛рд░, рд╣рд╛рдмрд░рд╛рдЪрд┐рддреНрддрд▓реАред

рдЕрдзрд┐рдХрд╛рдВрд╢ (рдпрджрд┐ рд╕рднреА рдирд╣реАрдВ) рд╡реЗрдм рд╕рд░реНрд╡рд░, HTTP рдЕрдиреБрд░реЛрдз рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╕рдордп, рд╕рд░реНрд╡рд░ рд╣реЗрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрд╡рдпрдВ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдирд╛рдо рджреЗрддрд╛ рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ - рд╕рдВрд╕реНрдХрд░рдг, рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЖрджрд┐ред рдЙрдиреНрд╣реЗрдВ рдореЛрдЬрд╝рд┐рд▓рд╛ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд╕реНрдкрд╛рдИ рдЬреИрд╕реЗ рдРрдб-рдСрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╕рд╛рдиреА рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕рд░реНрд╡рд░ рдЬрд╛рд╕реВрд╕

рд▓реЗрдХрд┐рди рд╕рднреА рд╡реЗрдм рд╕рд░реНрд╡рд░ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрд░рдХреНрд╖рд╛ рдЫреЗрдж рд╣реИред рдпрд╣ рдЖрд▓реЗрдЦ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрд╡рд░ рд╣реИрдбрд░ рдХреЛ рднреЗрдЬрдиреЗ рдХреЛ рдХреИрд╕реЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рдП рдпрд╛ рд▓рд╛рдЗрдЯрдЯрдкреИрдб, рдирдЧреНрдиреЗрдХреНрд╕, рдЕрдкрд╛рдЪреЗ, рдЬреА-рд╡рд╛рди рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдордирдорд╛рдирд╛ рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдХрдЯреМрддреА рдХреЗ рддрд╣рдд рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАред

lighttpd


рд▓рд╛рдЗрдЯрдЯреИрдк рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдПрдХрдорд╛рддреНрд░ рд╕рд░реНрд╡рд░ рд╣реИ рдЬреЛ рд╕рд░реНрд╡рд░ рд╣реЗрдбрд░ рд╕реНрдкреВрдлрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
server.tag = "gws"

nginx


Nginx рд╡реЗрдм рд╕рд░реНрд╡рд░ рдореЗрдВ рд╕рд░реНрд╡рд░ рд╣реЗрдбрд░ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓рдирд╛ рд╣реИ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╡реЗрдм рдирд┐рд░реНрджреЗрд╢реЛрдВ рдкрд░ рдПрдХ рдмрд╛рд░ рд╕реЗ рдЕрдзрд┐рдХ рдореБрд▓рд╛рдХрд╛рдд рд╣реБрдИред рд╕рдм рдХреБрдЫ рдорд╛рдереЗ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рд╕реНрд░реЛрдд рдореЗрдВ рдорд╛рди рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдФрд░ рдкреБрдирд░реНрд╕рдВрдпреЛрдЬрди рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП www.xakep.ru/post/54168
рдПрдХ рд╕рд░рд▓ рд╡рд┐рдзрд┐ рд╣реИред рдЖрдк HttpHeadersModule рдореЙрдбреНрдпреВрд▓ рдпрд╛ HttpHeadersMoreModule рдореЙрдбреНрдпреВрд▓ рдпрд╛ рдХрд┐рд╕реА рднреА HttpHeadersMoreModule рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рдВрдпреЛрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

HttpHeadersModule рдФрд░ HttpHeadersMoreModule рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
# Server
more_clear_headers 'Server';
#
add_header Server gws;


рдПрдХ рдПрдХрд▓ HttpHeadersMoreModule рдХреЗ рд╕рд╛рде:
# HttpHeadersMoreModule
more_set_headers 'Server: my-server';


рдЕрдкрд╛рдЪреЗ


рдЕрдкрд╛рдЪреЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдореЗрдВ, рд╕рд░реНрд╡рд░ рд╣реЗрдбрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕рд░реНрд╡рд░рдЯреЛрдХреЗрдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдкреВрд░реНрдг рд╣реИред Apache / 2.4.1 (Unix) PHP / 4.2.2 MyMod / 1.2 рдЬреИрд╕реА рдЬрд╛рдирдХрд╛рд░реА рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рдиреНрдпреВрдирддрдо рдЬреЛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╡рд╣ рдЕрдкрд╛рдЪреЗ рд╣реИред Mod_header рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдВрдиреЗ Nginx рдХреЗ рд╕рдорд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ред рд╡рд┐рдлрд▓ - Apache рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ ServerTokens рдФрд░ ServerSignature рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рд░реНрд╡рд░ рдорд╛рди рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рд╕реЗрдЯ рдХрд░рддрд╛ рд░рд╣рддрд╛ рд╣реИред
рдореБрдЭреЗ mod_security рдбрд╛рд▓рдиреА рдереА рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рд▓рд╛рдЗрди рдЬреЛрдбрд╝рдирд╛ рдерд╛:
SecServerSignature "gws"
рдпрд╣ рдЕрд░реНрдЬрд┐рдд рдХрд┐рдпрд╛ред

рдЬреА рд╡рд╛рди


рдЬреА-рд╡рд╛рди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕ рддрд░рд╣ рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рд╣реИрдВрдбрд▓рд░ рдореЗрдВ C рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

xbuf_xcat(get_reply(argv),
"HTTP/1.1 200 OK\r\n"
"Content-type: text/html\r\n"
"Content-Length: 20\r\n"
"Server: gws\r\n"
"Connection: keep-alive\r\n\r\n"
"Hello, World");

// set the HTTP reply code
int *pHTTP_status = (int*)get_env(argv, HTTP_CODE);
if(pHTTP_status)
*pHTTP_status = 200; // 200:OK
return 2;


G-WAN рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреА рд╕реВрдХреНрд╖реНрдорддрд╛рдПрдВ рдЗрд╕ рд▓реЗрдЦ рдХрд╛ рд╡рд┐рд╖рдп рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реВрдВред

рдЯрд┐рдкреНрдкрдгреА


рдпрд╣ рдЖрд▓реЗрдЦ рдЙрди рд╡реЗрдм рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдореИрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╕реЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдерд╛ред рдпрджрд┐, рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛, рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ - рд▓рд┐рдЦреЗрдВ, рдореИрдВ рд▓реЗрдЦ рдХреЛ рдкреВрд░рдХ рдХрд░реВрдВрдЧрд╛ред

Source: https://habr.com/ru/post/In140734/


All Articles