рдирдЧрдиреЗрдХреНрд╕ рднреВ-рд▓рдХреНрд╖реНрдпреАрдХрд░рдг, рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛

рд╕рдорд╛рдЪрд╛рд░ рд╕реНрдерд▓ рдкрд░ рд░реВрд╕ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рднреВ-рд▓рдХреНрд╖реНрдпреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░реНрдп рдерд╛, рдЕрд░реНрдерд╛рддреНред рдореБрдЦреНрдп рдкреГрд╖реНрда рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╕рдордп, рдкреНрд░рдкрддреНрд░ рдХреЗ рдкрддреЗ рдХреЗ рд╕рд╛рде рд╕рд╛рдЗрдЯ рдХреЗ рдХреНрд╖реЗрддреНрд░реАрдп рдкреГрд╖реНрда рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдХреНрд╖реЗрддреНрд░ / [рдХреНрд╖реЗрддреНрд░ рд╕рдВрдЦреНрдпрд╛], рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдЕрдкрд╛рдЪреЗ рдкрд░ рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ nginx рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдпрд╣ рд╕рд░реНрд╡рд░ рдкрд░ рдПрдХ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЕрдирд╛рд╡рд╢реНрдпрдХ рднрд╛рд░ рд╣реИред

рдФрд╕рдд рд╕рдВрд╕рд╛рдзрди рдпрд╛рддрд╛рдпрд╛рдд рдкреНрд░рддрд┐ рджрд┐рди 40tред Drupal, рдПрдХ рдХреИрд╢рд┐рдВрдЧ рдмреВрд╕реНрдЯ рдореЙрдбреНрдпреВрд▓ рдЬреЛ рд╕реНрдЯреИрдЯрд┐рдХ рдкреЗрдЬ рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдХрд┐ nginx рд╕рдорд╕реНрдпрд╛рдПрдБред

рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХреЗ рд▓рд┐рдП Google рджреНрд╡рд╛рд░рд╛ рдСрдлрд╝рд░ рдХрд┐рдП рдЧрдП js рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬрдирд╛, рдпрд╛ Apache рдкрд░ рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛, рд╡рд╛рдВрдЫрд┐рдд URL рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдирд╛, рдЬреЛ рд╢реБрд░реВ рдореЗрдВ рд╕реВрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред

IP рдкрддреЗ рдХреЗ рдЙрдкрд▓рдмреНрдз рдЖрдзрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж: www.wipmania.com/en/base , www.maxmind.com/en/home , ipgeobase.ru , рдПрдХ "рд╢рд╛рдирджрд╛рд░ рд╡рд┐рдЪрд╛рд░" рдерд╛ рдХрд┐ рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ URL (рдХреНрд╖реЗрддреНрд░ рд╕рдВрдЦреНрдпрд╛], рд╡рд╣ рдЦреБрд╢реА рдкреВрд░реА рд╣реЛрдЧреАред

рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдФрд░ рдЬрд┐рди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рднреВ-рд▓рдХреНрд╖реНрдпреАрдХрд░рдг рдХреЗрд╡рд▓ рд░реВрд╕реА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдореИрдВ nginx geo рдореЙрдбреНрдпреВрд▓ рдФрд░ ipgeobase рд╕реЗ рдкрддреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрд╕рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ geo рдореЙрдбреНрдпреВрд▓ рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдбреНрд░реЗрд╕ рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди ipgeobase рдХреЗ рдЖрдзрд╛рд░ рдХреЛ рдкрд╛рда рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡рд╛рдВрдЫрд┐рдд рд╕реНрд╡рд░реВрдк рдореЗрдВ рдкрддрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ ...

рддреЛ:
рдпрд╣рд╛рдБ рд╕реЗ ipgeobase.ru/files/db/Main/geo_files.tar.gz рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рд╕рдВрдЧреНрд░рд╣ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ, рдЕрдирдкреИрдХ рдХрд░реЗрдВ рдФрд░ 2 рдлрд╛рдЗрд▓реЗрдВ cidr_optim.txt рдФрд░ city.txt рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред
cidr_optim.txt рдореЗрдВ рдирд┐рдореНрди рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рд╣реИ:
<рдмреНрд▓реЙрдХ рдХреА рд╢реБрд░реБрдЖрдд> <рдмреНрд▓реЙрдХ рдХрд╛ рдЕрдВрдд> <рдкрддрд╛ рдмреНрд▓реЙрдХ> <рджреЗрд╢> <рд╢рд╣рд░ рдХреА рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛>

<рдмреНрд▓реЙрдХ рдХреА рд╢реБрд░реБрдЖрдд> рдлреЙрд░реНрдо рдХреЗ рдПрдмреАрд╕реА рдкрддреЗ рдХреЗ рдмреНрд▓реЙрдХ (рд░реЗрдВрдЬ) рдХреЗ рдкрд╣рд▓реЗ рдЖрдИрдкреА рдкрддреЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬреЛ рдлреЙрд░реНрдореВрд▓рд╛ * 256 * 256 * 256 * 256 + b * 256 * 256 + c * 256 + d рдХреЗ рдлреЙрд░реНрдореВрд▓реЗ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣реЛрддрд╛ рд╣реИред
рдмреНрд▓реЙрдХ рдХрд╛ <рдЕрдВрдд> рдирдВрдмрд░ рд╣реИ рдЬрд┐рд╕реЗ рдПрдлрдЬреА рдЯрд╛рдЗрдк рдХреЗ рдмреНрд▓реЙрдХ рдХреЗ рджреВрд╕рд░реЗ рдЖрдИрдкреА рдкрддреЗ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
<рдкрддреЗ рдХреЗ рдмреНрд▓реЙрдХ> - рдкреНрд░рдкрддреНрд░ abcd рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдХреЗ рдмреНрд▓реЙрдХ (рд░реЗрдВрдЬ) - efgh, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рддрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ
<рджреЗрд╢> - рджреЗрд╢ рдХрд╛ рджреЛ рдЕрдХреНрд╖рд░ рд╡рд╛рд▓рд╛ рдХреЛрдб рдЬрд┐рд╕рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдмреНрд▓реЙрдХ рд╣реЛрддрд╛ рд╣реИ
<рд╢рд╣рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛> - city.txt рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╢рд╣рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ред рдпрджрд┐ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЗ рдмрдЬрд╛рдп рдкрд╛рдиреА рдХрд╛ рдЫреАрдВрдЯрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╛ рддреЛ рд╢рд╣рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдмреНрд▓реЙрдХ рдХрд╛ рджреЗрд╢ рд░реВрд╕ рдФрд░ рдпреВрдХреНрд░реЗрди рдирд╣реАрдВ рд╣реИред

city.txt рдореЗрдВ рдирд┐рдореНрди рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдкреНрд░рд╛рд░реВрдк рд╣реИ:
<рд╢рд╣рд░ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛> <рд╢рд╣рд░ рдХрд╛ рдирд╛рдо> <рдХреНрд╖реЗрддреНрд░ рдХрд╛ рдирд╛рдо> <рдЬрд┐рд▓реЗ рдХрд╛ рдирд╛рдо> <рд╢рд╣рд░ рдХрд╛ рдХреЗрдВрджреНрд░ рдЕрдХреНрд╖рд╛рдВрд╢> <рд╢рд╣рд░ рдХрд╛ рдХреЗрдВрджреНрд░ рджреЗрд╢рд╛рдВрддрд░>
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ рд╣реИ ( ipgeobase.ru/Help.html#35 )

рдЗрд╕ рд╕рдм рд╕реЗ, рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╣реБрдП, рдореБрдЭреЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде 2 рдЯреЗрдмрд▓ рдорд┐рд▓реЗ, рдЬреЛ, рдлрд┐рд░, рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд┐рдпрд╛

рдлрд╛рд░реНрдо рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдХреЗ "рдмреНрд▓реЙрдХ (рд╢реНрд░реЗрдгреА) - рдПрдлрдИрдЬреАрдПрдЪ" -> (рдЖрд╡рд╢реНрдпрдХ URL) [рдХреНрд╖реЗрддреНрд░ рд╕рдВрдЦреНрдпрд╛]

рдкреНрд░рд╛рд░реВрдк рдХреЛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдмрдЪреА рд╣реИ:
рднреВ-рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рд╕рдордЭреЗ рдЧрдП рдкреНрд░рд╛рд░реВрдк рдореЗрдВ "рдПрдмреАрд╕реА - рдПрдлрдИрдЬреА" рдХреЗ рдЖрдИрдкреА-рдкрддреЛрдВ рдХреА "рдмреНрд▓реЙрдХ (рд░реЗрдВрдЬ)":
0.0.0.0/0 (рдкреНрд░рд╛рд░рдВрдн рдкрддрд╛ / рдмрд┐рдЯрдорд╛рд╕реНрдХ)ред

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

рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ 57 рд╣рдЬрд╝рд╛рд░ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде "0.0.0.0/0 (рдЖрд╡рд╢реНрдпрдХ URL)" рдкреНрд░рд╛рд░реВрдк рдХреА рдПрдХ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓реА рд╣реИ, рдЪрд▓реЛ рдЗрд╕реЗ рдХрд╣рддреЗ рд╣реИрдВ, geo_ru.confред

рдЕрдм, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, nginx:
http {} рдмреНрд▓реЙрдХ рдореЗрдВ, рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ
geo $region_number { default all; include [   ]/geo_ru.conf } 

рдпрд╛рдиреА рдЕрдкреАрд▓ рдХреЗ рдмрд╛рдж, рдпрджрд┐ рдЧреНрд░рд╛рд╣рдХ рдХрд╛ рдкрддрд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ, рддреЛ рд╕рдВрдмрдВрдзрд┐рдд рдореВрд▓реНрдп $ рдХреНрд╖реЗрддреНрд░ рд╡реИрд░рд┐рдПрдмрд▓ рдореЗрдВ рд╣реЛрдЧрд╛, рдЕрд░реНрдерд╛рддреН [рдХреНрд╖реЗрддреНрд░ рд╕рдВрдЦреНрдпрд╛], рдЕрдиреНрдпрдерд╛ 'рд╕рднреА'ред (рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг: nginx.org/ru/docs/http/ngx_http_geo_mulule.html )
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд:
рд╕рд╛рдЗрдЯ рдХреЗ рд╕рд░реНрд╡рд░ {} рдмреНрд▓реЙрдХ рдореЗрдВ
 #   $get_redirect   donot_redirect set $get_redirect donot_redirect; #  ,          do_redirect if ($uri = '/') { set $get_redirect do_redirect; } #  nginx          $region_number  'all' ,     if ($city = 'all') { set $get_redirect donot_redirect; } #    , ..             (      ) if ($cookie_geolocate = 1) { set $get_redirect donot_redirect; } #         if ($get_redirect = do_redirect) { rewrite ^(.*)$ http://example.com/region/$region_number redirect; } 

(рдпрд╛рдиреА, рдЕрдВрдд рдореЗрдВ, рд╣рдореЗрдВ рд╡рд╣ рдорд┐рд▓рд╛ рдЬреЛ рд╣рдо рдЪрд╛рд╣рддреЗ рдереЗ - рдХреНрд╖реЗрддреНрд░ / [рдХреНрд╖реЗрддреНрд░ рд╕рдВрдЦреНрдпрд╛] рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди

рдЦреИрд░, рдЖрдЦрд┐рд░реА - рддрд╛рдХрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рдЕрднреА рднреА рдореБрдЦреНрдп рдкреГрд╖реНрда рдХреЛ рдмреНрд▓реЙрдХ рдореЗрдВ рджреЗрдЦ рд╕рдХреЗ
рд╕реНрдерд╛рди / {} рдЧреНрд░рд╛рд╣рдХ рдХреЛ рдХреБрдХреА рднреЗрдЬреЗрдВ:
 add_header Set-Cookie "geolocate=1;Path=/;Domain=.example.com;"; 


рд╡рд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рд╣реИред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХреЛрдИ рдорджрдж рдХрд░реЗрдЧрд╛ред
рдЖрдк fedpress.ru рдкрд░ рдХрд╛рдо рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рдерд╛ рдХрд┐ рд╕рдорд╛рдзрд╛рди, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ, рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рдХрдЯ рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред рдореБрдЭреЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ, рд╕рд▓рд╛рд╣, рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЦреБрд╢реА рд╣реЛрдЧреАред

рдкреА рдПрд╕ рдкреНрд░рд┐рдп рд╣рдм рдореЗрдВ рдЙрдкрд╕реНрдерд┐рдд рдЕрднрд┐рднрд╛рд╡рдХ, рдХреГрдкрдпрд╛ "рдбрдореАрдЬрд╝ рдХреЗ рд▓рд┐рдП" рдЪрд░рдг-рджрд░-рдЪрд░рдг рдЧрд╛рдЗрдб рдХреЗ рд╕рд╛рде рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦреЗрдВ, рдЖрдИрдкреА рдкрддреЗ рдХреНрдпрд╛ рд╣реИрдВ, рд░реЗрдВрдЬ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдПрдХ рдореБрдЦреМрдЯрд╛ рдХреА рдЧрдгрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЖрдкрдХреЛ <рдмреНрд▓реЙрдХ рдкреНрд░рд╛рд░рдВрдн> (* * 256 * 256 * 256 + рдХреНрдпреЛрдВ рдЪрд╛рд╣рд┐рдП? b * 256 * 256 + c * 256 + d) рдФрд░ <рдмреНрд▓реЙрдХ рдХрд╛ рдЕрдВрдд> (e * 256 * 256 * 256 + 256 * f * 256 * 256 + g * 256 + h), рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрдИ рдЖрднрд╛рд░реА рд╣реЛрдВрдЧреЗред

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


All Articles