рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдо рдЖрдиреНрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдорд╛ рдкреНрд░реЛрдХреНрд╕реА рд░рд┐рднрд░реНрд╕ рдЧрд░реНрди OpenLiteSpeed тАЛтАЛрдХрд╕рд░реА рд╕реЗрдЯ рдЕрдк рдЧрд░реНрдЫреБ?

рдЕрдЪрдореНрдордХреЛ рдХреБрд░рд╛, OpenLiteSpeed тАЛтАЛрдХреЛ рд▓рд╛рдЧрд┐ Habr├й рдорд╛ рдЦреЛрдЬреАрд▓реЗ рдХреЗрд╣рд┐ рджрд┐рджреИрди! рдо рдпреЛ рдЕрдиреНрдпрд╛рдп рд╕рдЪреНрдпрд╛рдЙрди рд╣рддрд╛рд░ рдЧрд░реНрдЫреБ, рдХрд┐рдирднрдиреЗ LSWS рдПрдХ рд╕рднреНрдп рд╡реЗрдм рд╕рд░реНрднрд░ рд╣реЛред рдорд▓рд╛рдИ рдпрд╕рдХреЛ рдЧрддрд┐ рд░ рдлреИрдВрд╕реА рд╡реЗрдм рдкреНрд░рд╢рд╛рд╕рди рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдордирдкрд░реНрдЫ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпрджреНрдпрдкрд┐ OpenLiteSpeed тАЛтАЛрдПрдХ WordPress "рддреНрд╡рд░рдХ" рдХреЛ рд░реВрдкрдорд╛ рд╕рдмреИрднрдиреНрджрд╛ рдкреНрд░рд╕рд┐рджреНрдз рдЫ, рдЖрдЬрдХреЛ рд▓реЗрдЦрдорд╛ рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рдпрд╕рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдпреЛрдЧ рджреЗрдЦрд╛рдЙрдиреЗрдЫреБред рдЕрд░реНрдерд╛рддреН рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рдЙрд▓реНрдЯреЛ рдкреНрд░реЛрдХреНрд╕реА (рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА)ред рддрдкрд╛рдИрдВ рднрдиреНрдиреБрд╣реБрдиреНрдЫ рдХрд┐ рдпреЛ рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ nginx рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рдЫ? рдо рд╕рд╣рдордд рд╣реБрдиреЗрдЫреБред рддрд░ рдпреЛ рдзреЗрд░реИ рджреБрдЦреНрдЫ рдХрд┐ рд╣рд╛рдореА LSWS рд╕рдБрдЧ рдкреНрд░реЗрдордорд╛ рдкрд░реНрдпреМрдВ!

рдкреНрд░реЛрдХреНрд╕реА рдареАрдХ рдЫ, рддрд░ рдХрд╣рд╛рдБ? рдХреБрдиреИ рдХрдо рдЕрджреНрднреБрдд рд╕реЗрд╡рд╛ рдорд╛ - Nextcloudред рд╣рд╛рдореА рдирд┐рдЬреА "рдлрд╛рдЗрд▓-рд╕рд╛рдЭреЗрджрд╛рд░реА рдХреНрд▓рд╛рдЙрдб" рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВред рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд░рд╛рд╣рдХрдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрд╕рдБрдЧ рдЫреБрдЯреНрдЯреИ VM рдЖрд╡рдВрдЯрд┐рдд рдЧрд░реНрдЫреМрдВ, рд░ рд╣рд╛рдореА рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ "рдмрд╛рд╣рд┐рд░" рдкрд░реНрджрд╛рдлрд╛рд╕ рдЧрд░реНрди рдЪрд╛рд╣рдБрджреИрдиреМрдВред рдпрд╕рдХреЛ рд╕рдЯреНрдЯрд╛, рд╣рд╛рдореА рд╕рд╛рдЭрд╛ рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рдорд╛рд░реНрдлрдд рдкреНрд░реЛрдХреНрд╕реА рдЕрдиреБрд░реЛрдз рдЧрд░реНрджрдЫреМрдВред рдпреЛ рд╕рдорд╛рдзрд╛рдирд▓реЗ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ:
рез) рдЗрдиреНрдЯрд░рдиреЗрдЯрдмрд╛рдЯ рдХреНрд▓рд╛рдЗрдиреНрдЯ рдбрд╛рдЯрд╛ рднрдгреНрдбрд╛рд░рдг рдЧрд░рд┐рдПрдХреЛ рд╕рд░реНрднрд░ рд╣рдЯрд╛рдЙрдиреБрд╣реЛрд╕реН рд░
2) ip-рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдмрдЪрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рд░реЗрдЦрд╛рдЪрд┐рддреНрд░ рдпрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпреЛ рд╕реНрдкрд╖реНрдЯ рдЫ рдХрд┐ рдпреЛрдЬрдирд╛ рд╕рд░рд▓реАрдХреГрдд рдЫ, рдХрд┐рдирднрдиреЗ рд╡реЗрдм рд╕реЗрд╡рд╛ рдкреВрд░реНрд╡рд╛рдзрд╛рд░рдХреЛ рд╕рдВрдЧрдарди рдЖрдЬрдХреЛ рд▓реЗрдЦрдХреЛ рд╡рд┐рд╖рдп рд╣реЛрдЗрдиред

рдпрд╕ рд▓реЗрдЦрдорд╛ рдкрдирд┐, рдо рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдХреЛ рд╕реНрдерд╛рдкрдирд╛ рд░ рдЖрдзрд╛рд░рднреВрдд рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд▓рд╛рдИ рд╣рдЯрд╛рдЙрдиреЗрдЫреБ, рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдЬрдм рддреНрдпрд╣рд╛рдБ Habr├й рдорд╛ рдпрд╕ рд╡рд┐рд╖рдпрдорд╛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВ рдЫрдиреНред рддрд░ рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрдорд╛ рд╕реЗрдЯрд┐рдЩреНрд╣рд░реВ рджреЗрдЦрд╛рдЙрдиреЗрдЫреБ, рдЬреБрди рдмрд┐рдирд╛ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрд▓реЗ рдкреНрд░реЛрдХреНрд╕реА рдкрдЫрд╛рдбрд┐ рдХрд╛рдо рдЧрд░реНрджреИрдиред

рджрд┐рдЗрдПрдХреЛ:
рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рд╣реЛрд╕реНрдЯ рез рдорд╛ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдЫ рд░ HTTP рдорд╛ рдХрд╛рдо рдЧрд░реНрди рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░рд┐рдПрдХреЛ рдЫ (SSL рдмрд┐рдирд╛), рдпрд╕рдорд╛ рд╕реНрдерд╛рдиреАрдп рдиреЗрдЯрд╡рд░реНрдХ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд░ "рдЧреНрд░реЗ" IP рдареЗрдЧрд╛рдирд╛ 1 рдорд╛рддреНрд░ рдЫред
рд╣реЛрд╕реНрдЯ 2 рдорд╛ OpenLiteSpeed тАЛтАЛрдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реМрдВред рдпрд╕рдорд╛ рджреБрдИ рдЗрдиреНрдЯрд░рдлреЗрд╕рд╣рд░реВ рдЫрдиреН, рдмрд╛рд╣реНрдп (рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рджреЗрдЦрд┐рдиреНрдЫ) рд░ рдиреЗрдЯрд╡рд░реНрдХ 172.16.22.0/24 рдорд╛ IP рдареЗрдЧрд╛рдирд╛рдХреЛ рд╕рд╛рде рдЖрдиреНрддрд░рд┐рдХред
рд╣реЛрд╕реНрдЯ 2 рдХреЛ рдмрд╛рд╣реНрдп рдЗрдиреНрдЯрд░рдлреЗрд╕ IP рдареЗрдЧрд╛рдирд╛ DNS рдирд╛рдо cloud.connect.link рд╣реЛ

рдХрд╛рд░реНрдп:
рд▓рд┐рдЩреНрдХ рдорд╛рд░реНрдлрдд рдЗрдиреНрдЯрд░рдиреЗрдЯрдмрд╛рдЯ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреБрд╣реЛрд╕реН 'https://cloud.connect.linkрдЖрдиреНрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдорд╛ (SSL)ред

  • Ubuntu 18.04.2 рдорд╛ OpenLiteSpeed тАЛтАЛрд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрджреИред

рдПрдЙрдЯрд╛ рднрдгреНрдбрд╛рд░ рдердкреМрдВ:

wget -O http://rpms.litespeedtech.com/debian/enable_lst_debain_repo.sh | sudo bash
sudo apt-get update

рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдЪрд▓рд╛рдЙрдиреБрд╣реЛрд╕реН:

sudo apt-get install openlitespeed
sudo /usr/local/lsws/bin/lswsctrl рд╕реБрд░реБ

  • рдиреНрдпреВрдирддрдо рдлрд╛рдпрд░рд╡рд╛рд▓ рд╕реЗрдЯрдЕрдкред

    sudo ufw ssh рд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреБрд╣реЛрд╕реН
    sudo ufw рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдмрд╛рд╣рд┐рд░ рдЬрд╛рдиреЗ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ
    sudo ufw рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЖрдЧрдорди рдЕрд╕реНрд╡реАрдХрд╛рд░
    sudo ufw http рд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреБрд╣реЛрд╕реН
    sudo ufw рдЕрдиреБрдорддрд┐ https
    sudo ufw рдмрд╛рдЯ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ рддрдкрд╛рдИрдВрдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рд╣реЛрд╕реНрдЯ рдХреБрдиреИ рдкрдирд┐ рдкреЛрд░реНрдЯ 7080 рдорд╛
    sudo ufw рд╕рдХреНрд╖рдо

  • рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реАрдХреЛ рд░реВрдкрдорд╛ OpenLiteSpeed тАЛтАЛрд╕реЗрдЯ рдЕрдк рдЧрд░реНрдиреБрд╣реЛрд╕реНред
    рднрд░реНрдЪреБрдЕрд▓рд╣реЛрд╕реНрдЯ рдЕрдиреНрддрд░реНрдЧрдд рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реМрдВред

    cd/usr/local/lsws/
    sudo mkdirc cloud.connect.link
    cd cloud.connect.link/
    sudo mkdir {conf,html,logs}
    sudo chown lsadm:lsadm ./conf/

LSWS рд╡реЗрдм рдЗрдиреНрдЯрд░рдлреЗрд╕рдмрд╛рдЯ рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реМрдВред
url рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН http://cloud.connect.link:7080
рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд▓рдЧрдЗрди/рдкрд╛рд╕рд╡рд░реНрдб: admin/123456

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдердкреНрдиреБрд╣реЛрд╕реН (рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯрд╣рд░реВ > рдердкреНрдиреБрд╣реЛрд╕реН)ред
рдердкреНрджрд╛, рддреНрд░реБрдЯрд┐ рд╕рдиреНрджреЗрд╢ рджреЗрдЦрд╛ рдкрд░реНрдиреЗрдЫ - рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓ рд╣рд░рд╛рдЗрд░рд╣реЗрдХреЛ рдЫред рдпреЛ рд╕рд╛рдорд╛рдиреНрдп рд╣реЛ, рдХреНрд▓рд┐рдХ рдЧрд░реНрди рдХреНрд▓рд┐рдХ рдЧрд░реЗрд░ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

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

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдЕрдм рдпреЛ рд╕рдореНрдЭрдиреЗ рд╕рдордп рд╣реЛ рдХрд┐ рд╣рд╛рдореАрд╕рдБрдЧ рд╡реЗрдм рд╕рд░реНрднрд░ рдорд╛рддреНрд░ рдЫреИрди, рддрд░ рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рдЫред рдирд┐рдореНрди рд╕реЗрдЯрд┐рдЩрд╣рд░реВрд▓реЗ LSWS рд▓рд╛рдИ рдкреНрд░реЛрдХреНрд╕реА рдХреЗ рд░ рдХрд╣рд╛рдБ рдЧрд░реНрдиреЗ рднрдиреЗрд░ рдмрддрд╛рдЙрдиреЗрдЫред рднрд░реНрдЪреБрдЕрд▓рд╣реЛрд╕реНрдЯ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛, рдмрд╛рд╣реНрдп рдПрдк рдЯреНрдпрд╛рдм рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН рд░ рд╡реЗрдм рд╕рд░реНрднрд░ рдкреНрд░рдХрд╛рд░рдХреЛ рдирдпрд╛рдБ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдердкреНрдиреБрд╣реЛрд╕реН:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдирд╛рдо рд░ рдареЗрдЧрд╛рдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддрдкрд╛рдИрдВ рдПрдХ рд╕реНрд╡реИрдЪреНрдЫрд┐рдХ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рд╕рдореНрдЭрдиреБ рдЖрд╡рд╢реНрдпрдХ рдЫ, рдпреЛ рдЕрд░реНрдХреЛ рдЪрд░рдгрд╣рд░реВрдорд╛ рдХрд╛рдордорд╛ рдЖрдЙрдиреЗрдЫред рдареЗрдЧрд╛рдирд╛ рдПрдХ рд╣реЛ рдЬрд╣рд╛рдБ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рдЖрдиреНрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдмрд╕реНрдЫ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдЙрд╣реА рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛, рд╕рдиреНрджрд░реНрдн рдЯреНрдпрд╛рдм рдЦреЛрд▓реНрдиреБрд╣реЛрд╕реН рд░ рдкреНрд░реЛрдХреНрд╕реА рдкреНрд░рдХрд╛рд░рдХреЛ рдирдпрд╛рдБ рд╕рдиреНрджрд░реНрдн рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН: URI = /, рд╡реЗрдм рд╕рд░реНрднрд░ = nextcloud_1 (рдЕрдШрд┐рд▓реНрд▓реЛ рдЪрд░рдгрдмрд╛рдЯ рдирд╛рдо)

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

LSWS рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдпреЛ рд╡реЗрдм рдЗрдиреНрдЯрд░рдлреЗрд╕рдмрд╛рдЯ рдПрдХ рдХреНрд▓рд┐рдХ рд╕рдВрдЧ рдЧрд░рд┐рдиреНрдЫ, рдЪрдорддреНрдХрд╛рд░! (рдПрдХ рд╡рдВрд╢рд╛рдиреБрдЧрдд рдорд╛рдЙрд╕ рд╡рд╛рд╣рдХ рдо рдорд╛ рдмреЛрд▓реНрдЫ)

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк
рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

  • рд╣рд╛рдореАрд▓реЗ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд░рд╛рдЦреНрдпреМрдВ, https рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдЫреМрдВред
    рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рдЫреЛрдбреНрдиреЗрдЫреМрдВ, рд╣рд╛рдореАрд╕рдБрдЧ рдпреЛ рдкрд╣рд┐рд▓реЗ рдиреИ рдЫ рднрдиреА рд╕рд╣рдордд рд╣реБрдиреЗрдЫреМрдВ рд░ /etc/letsencrypt/live/cloud.connect.link рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рдХреБрдЮреНрдЬреАрд╕рдБрдЧ рдЭреБрдЯ рдмреЛрд▓реНрдиреЗрдЫреМрдВред

рдПрдЙрдЯрд╛ "рд╢реНрд░реЛрддрд╛" (рд╢реНрд░реЛрддрд╛рд╣рд░реВ > рдердкреНрдиреБрд╣реЛрд╕реН) рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реМрдВ, рдпрд╕рд▓рд╛рдИ "https" рднрдирд┐рдиреНрдЫред рдпрд╕рд▓рд╛рдИ рдкреЛрд░реНрдЯ рекрекрей рдорд╛ рдкреЛрдЗрдиреНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдзреНрдпрд╛рди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ рдпреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдиреЗрдЫ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

SSL рдЯреНрдпрд╛рдмрдорд╛, рдХреБрдЮреНрдЬреА рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░рдХреЛ рдмрд╛рдЯреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

"рд╢реНрд░реЛрддрд╛" рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЕрдм рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдореНрдпрд╛рдкрд┐рдЩ рд╕реЗрдХреНрд╕рдирдорд╛ рд╣рд╛рдореА рдпрд╕рдорд╛ рд╣рд╛рдореНрд░реЛ рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рдердкреНрдиреЗрдЫреМрдВ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпрджрд┐ LSWS рд▓реЗ рдПрдЙрдЯрд╛ рд╕реЗрд╡рд╛рдорд╛ рдорд╛рддреНрд░ рдкреНрд░реЛрдХреНрд╕реА рдЧрд░реНрдЫ рднрдиреЗ, рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреВрд░рд╛ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рддрд░ рд╣рд╛рдореАрд▓реЗ рдбреЛрдореЗрди рдирд╛рдордХреЛ рдЖрдзрд╛рд░рдорд╛ рд╡рд┐рднрд┐рдиреНрди "рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ" рдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВ рдкрдард╛рдЙрди рдпрд╕рд▓рд╛рдИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдпреЛрдЬрдирд╛ рдмрдирд╛рдПрдХрд╛ рдЫреМрдВред рд░ рд╕рдмреИ рдбреЛрдореЗрдирд╣рд░реВрдХреЛ рдЖрдлреНрдиреИ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╣рд░реВ рд╣реБрдиреЗрдЫрдиреНред рддреНрдпрд╕рдХрд╛рд░рдг, рддрдкрд╛рдИрд▓реЗ рднрд░реНрдЪреБрдЕрд▓рд╣реЛрд╕реНрдЯ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдорд╛ рдЬрд╛рдиреБ рдкрд░реНрдЫ рд░ рдлреЗрд░рд┐ SSL рдЯреНрдпрд╛рдмрдорд╛ рдпрд╕рдХреЛ рдХреБрдЮреНрдЬреА рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рднрд╡рд┐рд╖реНрдпрдорд╛, рдпреЛ рдкреНрд░рддреНрдпреЗрдХ рдирдпрд╛рдБ рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯрдХреЛ рд▓рд╛рдЧрд┐ рдЧрд░рд┐рдиреБрдкрд░реНрдЫред

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпреЛ url рдкреБрди: рд▓реЗрдЦрди рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рдмрд╛рдБрдХреА рдЫ рддрд╛рдХрд┐ http рдЕрдиреБрд░реЛрдзрд╣рд░реВ https рдорд╛ рд╕рдореНрдмреЛрдзрди рдЧрд░рд┐рдиреНрдЫред
(рд╡реИрд╕реЗ, рдпреЛ рдХрд╣рд┐рд▓реЗ рд╕рдорд╛рдкреНрдд рд╣реБрдиреНрдЫ? рдпреЛ рдмреНрд░рд╛рдЙрдЬрд░ рд░ рдЕрдиреНрдп рд╕рдлреНрдЯрд╡реЗрдпрд░рдХреЛ рд▓рд╛рдЧрд┐ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ https рдорд╛ рдЬрд╛рдиреЗ рд╕рдордп рд╣реЛ, рд░ рдЖрд╡рд╢реНрдпрдХ рднрдПрдорд╛ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ no-SSL рдорд╛ рдлрд░реНрд╡рд╛рд░реНрдб рдЧрд░реНрдиреБрд╣реЛрд╕реН)ред
рдкреБрди:рд▓реЗрдЦрди рд╕рдХреНрд╖рдо рдкрд╛рд░реНрдиреБрд╣реЛрд╕реН рд░ рдкреБрди:рд▓реЗрдЦрди рдирд┐рдпрдорд╣рд░реВ рд▓реЗрдЦреНрдиреБрд╣реЛрд╕реН:

RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдЕрдиреМрдареЛ рдЧрд▓рддрдлрд╣рдореАрдХреЛ рдХрд╛рд░рдг, рд╕рд╛рдорд╛рдиреНрдп рдЧреНрд░реЗрд╕рдлреБрд▓ рд░рд┐рд╕реНрдЯрд╛рд░реНрдЯрдХреЛ рд╕рд╛рде рдкреБрди: рд▓реЗрдЦреНрдиреЗ рдирд┐рдпрдорд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрди рдЕрд╕рдореНрднрд╡ рдЫред рддреНрдпрд╕рдХрд╛рд░рдг, рд╣рд╛рдореА LSWS рд▓рд╛рдИ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рд╣реЛрдЗрди, рддрд░ рдЕрд╢рд┐рд╖реНрдЯ рд░ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рд░реВрдкрдорд╛ рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреЗрдЫреМрдВ:

sudo systemctl lsws.service рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рд╕рд░реНрднрд░рд▓рд╛рдИ рдкреЛрд░реНрдЯ 80 рд╕реБрдиреНрдирдХреЛ рд▓рд╛рдЧрд┐, рдЕрд░реНрдХреЛ рд╢реНрд░реЛрддрд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реМрдВред рдпрд╕рд▓рд╛рдИ http рдХрд▓ рдЧрд░реМрдВ, 80 рдФрдВ рдкреЛрд░реНрдЯ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдпреЛ рдЧреИрд░-рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реБрдиреЗрдЫ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

https рд╢реНрд░реЛрддрд╛ рд╕реЗрдЯрд┐рдЩрд╕рдБрдЧ рд╕рдорд╛рдирддрд╛ рдЧрд░реЗрд░, рдпрд╕рдорд╛ рд╣рд╛рдореНрд░реЛ рднрд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯ рд╕рдВрд▓рдЧреНрди рдЧрд░реМрдВред

рдЕрдм LSWS рд▓реЗ рдкреЛрд░реНрдЯ 80 рдорд╛ рд╕реБрдиреНрдиреЗрдЫ рд░ 443 рдорд╛ рдЕрдиреБрд░реЛрдз рдкрдард╛рдЙрдиреЗрдЫ, url рдкреБрди: рд▓реЗрдЦреЗрд░ред
рдЕрдиреНрддрдорд╛, рдо LSWS рд▓рдЧрд┐рдЩ рд╕реНрддрд░ рдШрдЯрд╛рдЙрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░реНрдЫреБ, рдЬреБрди рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдбрд┐рдмрдЧрдорд╛ рд╕реЗрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫред рдпрд╕ рдореЛрдбрдорд╛, рд▓рдЧрд╣рд░реВ рдмрд┐рдЬреБрд▓реАрдХреЛ рдЧрддрд┐рдорд╛ рдЧреБрдгрд╛ рд╣реБрдиреНрдЫрдиреН! рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдЪреЗрддрд╛рд╡рдиреА рд╕реНрддрд░ рдкрд░реНрдпрд╛рдкреНрдд рдЫред рд╕рд░реНрднрд░ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди > рд▓рдЧ рдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпрд╕рд▓реЗ рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реАрдХреЛ рд░реВрдкрдорд╛ OpenLiteSpeed тАЛтАЛрдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреВрд░рд╛ рдЧрд░реНрдЫред рдлреЗрд░рд┐, LSWS рдкреБрди: рд╕реБрд░реБ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд▓рд┐рдЩреНрдХ рдкрдЫреНрдпрд╛рдЙрдиреБрд╣реЛрд╕реН https://cloud.connect.link рд░ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрд▓реЗ рд╣рд╛рдореАрд▓рд╛рдИ рднрд┐рддреНрд░ рдЬрд╛рди рджрд┐рдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд▓реЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕реВрдЪреАрдорд╛ cloud.connect.link рдбреЛрдореЗрди рдердкреНрдиреБрдкрд░реНрдЫред config.php рд╕рдореНрдкрд╛рджрди рдЧрд░реМрдВред рдЙрдмреБрдиреНрдЯреБ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрджрд╛ рдореИрд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реЗрдВ рд░ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдпрд╣рд╛рдБ рдЕрд╡рд╕реНрдерд┐рдд рдЫ: /var/snap/nextcloud/current/nextcloud/configред
рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп_рдбреЛрдореЗрди рдХреБрдЮреНрдЬреАрдорд╛ 'Cloud.connect.link' рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рдердкреНрдиреБрд╣реЛрд╕реН:

'trusted_domains' =>
рдПрд░реНрд░реЗ (
реж => 'рез 0 реи.рез172.16.22.110.реж.' ',
1 => 'Cloud.connect.link',
),

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рдпрд╕рдмрд╛рд╣реЗрдХ, рдЙрд╣реА рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рд╣рд╛рдореНрд░реЛ рдкреНрд░реЛрдХреНрд╕реАрдХреЛ IP рдареЗрдЧрд╛рдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреБрдкрд░реНрдЫред рдо рддрдкрд╛рдЗрдБрдХреЛ рдзреНрдпрд╛рди рдпрд╕ рддрдереНрдпрдорд╛ рдЖрдХрд░реНрд╖рд┐рдд рдЧрд░реНрджрдЫреБ рдХрд┐ рдареЗрдЧрд╛рдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░рд┐рдиреБ рдкрд░реНрдЫ рдЬреБрди рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рд╕рд░реНрднрд░рдорд╛ рджреЗрдЦрд┐рдиреЗ рдЫ, рдЕрд░реНрдерд╛рддреНред рд╕реНрдерд╛рдиреАрдп LSWS рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ IPред рдпреЛ рдЪрд░рдг рдмрд┐рдирд╛, рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рд╡реЗрдм рдЗрдиреНрдЯрд░рдлреЗрд╕ рдХрд╛рдо рдЧрд░реНрджрдЫ, рддрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдЕрдзрд┐рдХреГрдд рдЫреИрдирдиреНред

'trusted_proxies' =>
рдПрд░реНрд░реЗ (
реж => 'рез 0 реи.рез172.16.22.100.реж.' ',
),

рд░рд╛рдореНрд░реЛ, рддреНрдпрд╕ рдкрдЫрд┐ рд╣рд╛рдореА рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рдЬрд╛рди рд╕рдХреНрдЫреМрдВ:

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░ рдмрд╛рд╣рд┐рд░ OpenLiteSpeed: рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рд╕реЗрдЯрдЕрдк

рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рднрдпреЛ! рдЕрдм рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╛рдЗрдиреНрдЯрд▓реЗ рдЖрдлреНрдиреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд url рдорд╛ "рдлрд╛рдЗрд▓ рдХреНрд▓рд╛рдЙрдб" рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫ, рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рд╕рд╛рде рд╕рд░реНрднрд░ рдЗрдиреНрдЯрд░рдиреЗрдЯрдмрд╛рдЯ рдЕрд▓рдЧ рдЧрд░рд┐рдПрдХреЛ рдЫ, рднрд╡рд┐рд╖реНрдпрдХрд╛ рдЧреНрд░рд╛рд╣рдХрд╣рд░реВрд▓реЗ рд╕рдмреИ рд╕рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗрдЫрдиреН рд░ рдПрдХрд▓ рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реБрдиреЗрдЫреИрдиред
рдердк рд░реВрдкрдорд╛, рддрдкрд╛рдИрд▓реЗ рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА рдбреЗрд▓рд┐рднрд░ рдЧрд░реНрди рд░рд┐рднрд░реНрд╕ рдкреНрд░реЛрдХреНрд╕реА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдпрд╕рд▓реЗ рдЧрддрд┐рдорд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╡реГрджреНрдзрд┐ рджрд┐рдиреЗрдЫреИрдиред рддреНрдпрд╕реИрд▓реЗ рдпреЛ рдРрдЪреНрдЫрд┐рдХ рд░ рдРрдЪреНрдЫрд┐рдХ рдЫред

рдо рдпреЛ рдХрдерд╛ рд╕рд╛рдЭрд╛ рдЧрд░реНрди рдкрд╛рдЙрдБрджрд╛ рдЦреБрд╕реА рдЫреБ, рдорд▓рд╛рдИ рдЖрд╢рд╛ рдЫ рдХрд┐ рдпреЛ рдХрд╕реИрд▓рд╛рдИ рдЙрдкрдпреЛрдЧреА рд╣реБрдиреЗрдЫред рдпрджрд┐ рддрдкрд╛рдЗрдБ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдердк рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд░ рдкреНрд░рднрд╛рд╡рдХрд╛рд░реА рддрд░рд┐рдХрд╛рд╣рд░реВ рдЬрд╛рдиреНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рдо рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЖрднрд╛рд░реА рд╣реБрдиреЗрдЫреБ!

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди