{"id":346711,"date":"2023-03-14T15:01:08","date_gmt":"2023-03-14T15:01:08","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=346711"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=346711","title":{"rendered":"<span>Starting Electronics: \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c \u043d\u0430 Arduino. \u0427\u0430\u0441\u0442\u044c 8. \u0412\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440 \u0441 SD \u043a\u0430\u0440\u0442\u043e\u0439 \u0438 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/post\/721056\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/sg\/gn\/ey\/sggneyazufubnazazkkgv2urwd8.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/sg\/gn\/ey\/sggneyazufubnazazkkgv2urwd8.jpeg\" data-blurred=\"true\"\/><\/a><\/p>\n<p>  <i><b>\u041e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430.<\/b> \u0412\u0441\u0451 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435 \u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435. \u0412 \u044d\u0442\u043e\u043c \u0443\u0440\u043e\u043a\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u0432 HTML \u043a\u043e\u0434\u0435 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043d\u0430 \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u044d\u0442\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0438. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043c\u0438\u043d\u0438-\u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u0441\u0430\u0439\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c \u0438 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/i><br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h2><font color=\"#1c22be\">\u276f<\/font> <font color=\"#454cee\"> \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u0432 HTML<\/font><\/h2>\n<p>  \u0412 HTML \u0441\u0441\u044b\u043b\u043a\u0438 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0435\u0433\u0430 &lt;a>. \u0422\u0435\u043a\u0441\u0442 \u043c\u0435\u0436\u0434\u0443 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u043c \u0442\u0435\u0433\u043e\u043c &lt;a> \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u043c \u0442\u0435\u0433\u043e\u043c &lt;\/a> \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u00ab\u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0439\u00bb \u0441\u0441\u044b\u043b\u043a\u043e\u0439.<\/p>\n<p>  \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430 href \u0442\u0435\u0433\u0430 &lt;a> \u0434\u043e\u043b\u0436\u043d\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0441\u0441\u044b\u043b\u043a\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<pre><code class=\"plaintext\">&lt;p>Go to &lt;a href=\"page2.htm\">page 2&lt;\/a>.&lt;\/p> <\/code><\/pre>\n<p>  \u042d\u0442\u0430 HTML \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u0441\u0442 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0430\u0431\u0437\u0430\u0446 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u00ab<b>page 2<\/b>\u00bb \u0441\u0442\u0430\u043d\u0435\u0442 \u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043d\u0430 \u0444\u0430\u0439\u043b \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <b>page2.htm<\/b>.<\/p>\n<p>  \u0424\u0430\u0439\u043b <b>page2.htm<\/b> \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0442\u043e\u043c \u0436\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u0447\u0442\u043e \u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043d\u0435\u0433\u043e.<\/p>\n<h2><font color=\"#1c22be\">\u276f<\/font> <font color=\"#454cee\"> \u041f\u0440\u0438\u043c\u0435\u0440\u044b HTML \u0444\u0430\u0439\u043b\u043e\u0432<\/font><\/h2>\n<p>  \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0432 \u044d\u0442\u043e\u043c \u0443\u0440\u043e\u043a\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0432\u0430 HTML \u0444\u0430\u0439\u043b\u0430. \u041e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b \u043d\u0430 microSD \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u0441\u0430\u043c\u0430 \u043a\u0430\u0440\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0440\u0430\u0437\u044a\u0451\u043c \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 Ethernet Shield.<\/p>\n<p>  \u0413\u043b\u0430\u0432\u043d\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 <b>index.htm<\/b>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f \u043f\u0435\u0440\u0432\u043e\u0439 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 HTML \u043a\u043e\u0434:<\/p>\n<pre><code class=\"plaintext\">&lt;!DOCTYPE html> &lt;html>     &lt;head>         &lt;title>Arduino SD Card Web Page&lt;\/title>     &lt;\/head>     &lt;body>         &lt;h1>Arduino SD Card Page with Link&lt;\/h1>         &lt;p>Go to &lt;a href=\"page2.htm\">page 2&lt;\/a>.&lt;\/p>     &lt;\/body> &lt;\/html> <\/code><\/pre>\n<p>  \u042d\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0432\u0442\u043e\u0440\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <b>page2.htm<\/b>:<\/p>\n<pre><code class=\"plaintext\">&lt;!DOCTYPE html> &lt;html>     &lt;head>         &lt;title>Arduino SD Card Web Page 2&lt;\/title>     &lt;\/head>     &lt;body>         &lt;h1>Arduino SD Card Page 2&lt;\/h1>         &lt;p>Go back to &lt;a href=\"index.htm\">main page&lt;\/a>.&lt;\/p>     &lt;\/body> &lt;\/html> <\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 <b>page2.htm<\/b> (\u043e\u0431\u0440\u0430\u0442\u043d\u043e) \u0441\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0433\u043b\u0430\u0432\u043d\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 <b>index.htm<\/b>.<\/p>\n<p>  \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0434\u0432\u0430 \u0444\u0430\u0439\u043b\u0430 <b>index.htm<\/b> \u0438 <b>page2.htm<\/b> \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432\u044b\u0448\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c \u0438 \u0441\u043a\u043e\u043f\u0438\u0440\u0443\u0439\u0442\u0435 \u0438\u0445 \u043d\u0430 microSD \u043a\u0430\u0440\u0442\u0443 \u043f\u0430\u043c\u044f\u0442\u0438. \u0417\u0430\u0442\u0435\u043c \u0432\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043a\u0430\u0440\u0442\u0443 \u0432 \u0440\u0430\u0437\u044a\u0451\u043c \u043d\u0430 Ethernet Shield.<\/p>\n<p>  \u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0443 \u044d\u0442\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435 (\u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0432 \u043e\u0431\u0430 \u0444\u0430\u0439\u043b\u0430 \u0432 \u043e\u0434\u043d\u0443 \u043f\u0430\u043f\u043a\u0443 \u043d\u0430 \u0436\u0435\u0441\u0442\u043a\u043e\u043c \u0434\u0438\u0441\u043a\u0435). \u041e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u0444\u0430\u0439\u043b index.htm \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 \u0438 \u0449\u0451\u043b\u043a\u043d\u0438\u0442\u0435 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 \u2014 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0442\u043a\u0440\u044b\u0442\u044c\u0441\u044f \u0444\u0430\u0439\u043b page2.htm. \u041f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 page2.htm \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 index.htm.<\/p>\n<p>  \u0412 \u044d\u0442\u043e\u043c \u0432\u0438\u0434\u0435\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043a\u0430\u043a \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0443 \u0438 \u043a\u0430\u043a \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u043d\u0438\u043c\u0438. \u041a\u043e\u0434 \u0441\u043a\u0435\u0442\u0447\u0430 \u0438 \u0435\u0433\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0431\u0443\u0434\u0443\u0442 \u0434\u0430\u043d\u044b \u043d\u0438\u0436\u0435.<\/p>\n<div class=\"oembed\">\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/64076c493afabae06672fc3c\" data-style=\"\" id=\"64076c493afabae06672fc3c\" width=\"\"><\/div>\n<\/div>\n<p>  <\/p>\n<h2><font color=\"#1c22be\">\u276f<\/font> <font color=\"#454cee\"> HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0441\u0442\u0440\u0430\u043d\u0438\u0446<\/font><\/h2>\n<p>  \u041a\u043e\u0433\u0434\u0430 \u0432\u0435\u0431-\u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0433\u043b\u0430\u0432\u043d\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0441 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 Arduino, \u043e\u043d \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 HTTP \u0437\u0430\u043f\u0440\u043e\u0441, \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u044d\u0442\u043e\u043c\u0443:<\/p>\n<pre><code class=\"plaintext\">GET \/ HTTP\/1.1 Host: 10.0.0.20 User-Agent: Mozilla\/5.0 (X11; Ubuntu; Linux i686; rv:19.0) Gecko\/20100101 Firefox\/19.0 Accept: text\/html,application\/xhtml+xml,application\/xml;q=0.9,*\/*;q=0.8 Accept-Language: en-ZA,en-GB;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Connection: keep-alive <\/code><\/pre>\n<p>  \u041c\u044b \u0443\u0436\u0435 \u0432\u0438\u0434\u0435\u043b\u0438 \u0442\u0430\u043a\u0438\u0435 HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0432 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0447\u0430\u0441\u0442\u044f\u0445 \u044d\u0442\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.<\/p>\n<p>  \u041f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 index.htm (\u044d\u0442\u043e \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 page2.htm), \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 Arduino \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0440\u043e\u0441:<\/p>\n<pre><code class=\"plaintext\">GET \/page2.htm HTTP\/1.1 Host: 10.0.0.20 User-Agent: Mozilla\/5.0 (X11; Ubuntu; Linux i686; rv:19.0) Gecko\/20100101 Firefox\/19.0 Accept: text\/html,application\/xhtml+xml,application\/xml;q=0.9,*\/*;q=0.8 Accept-Language: en-ZA,en-GB;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Referer: http:\/\/10.0.0.20\/ Connection: keep-alive <\/code><\/pre>\n<p>  \u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430\u043f\u0440\u043e\u0441 (<b>GET \/<\/b>) \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 (\u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u044d\u0442\u043e index.htm).<\/p>\n<p>  \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430\u043f\u0440\u043e\u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b (<b>GET \/page2.htm<\/b>).<\/p>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b Arduino \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043c\u044b, \u0442\u043e \u0432 \u0441\u043a\u0435\u0442\u0447\u0435 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043b\u0438 \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0438\u043b\u0438 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0434\u0440\u0443\u0433\u043e\u0439 \u0444\u0430\u0439\u043b.<\/p>\n<h2><font color=\"#1c22be\">\u276f<\/font> <font color=\"#454cee\"> \u0421\u043a\u0435\u0442\u0447 Arduino \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0434\u0432\u0443\u043c\u044f \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u043c\u0438<\/font><\/h2>\n<p>  \u0421\u043a\u0435\u0442\u0447, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043d\u0438\u0436\u0435, \u044d\u0442\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u043a\u0435\u0442\u0447\u0430 \u0438\u0437 <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/711042\/\">2-\u0439 \u0447\u0430\u0441\u0442\u0438<\/a> \u044d\u0442\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.<\/p>\n<pre><code class=\"java\">\/*--------------------------------------------------------------   \u0421\u043a\u0435\u0442\u0447:      eth_websrv_SD_link    \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435:  Arduino \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0434\u0432\u0443\u043c\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u043c\u0438 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438, \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0438 \u0441\u0441\u044b\u043b\u043a\u0438 \u0434\u0440\u0443\u0433 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430.      \u041e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435: \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 Arduino Uno, \u043f\u043b\u0430\u0442\u0430 Ethernet Shield, microSD \u043a\u0430\u0440\u0442\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 2 \u0413\u0431, \u043e\u0442\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432 FAT16                    \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u0435: \u0441\u0440\u0435\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 Arduino IDE      \u0421\u0441\u044b\u043b\u043a\u0438:     - WebServer example by David A. Mellis and modified by Tom Igoe     - SD card examples by David A. Mellis and Tom Igoe     - Ethernet library documentation: http:\/\/arduino.cc\/en\/Reference\/Ethernet     - SD Card library documentation: http:\/\/arduino.cc\/en\/Reference\/SD    \u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f:         2 \u043c\u0430\u0440\u0442\u0430 2013   \u0418\u0437\u043c\u0435\u043d\u0435\u043d\u043e:     14 \u0438\u044e\u043d\u044f 2013     \u0410\u0432\u0442\u043e\u0440:       W.A. Smith, http:\/\/startingelectronics.org --------------------------------------------------------------*\/  #include &lt;SPI.h> #include &lt;Ethernet.h> #include &lt;SD.h>  \/\/ \u0420\u0430\u0437\u043c\u0435\u0440 \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u043b\u044f HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u0430 #define REQ_BUF_SZ   20  byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; IPAddress ip(192, 168, 0, 20); \/\/ IP-\u0430\u0434\u0440\u0435\u0441 (\u043d\u0443\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u0441\u0435\u0442\u0438) EthernetServer server(80);  File webFile; \/\/ \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 char HTTP_req[REQ_BUF_SZ] = {0}; \/\/ HTTP \u0437\u0430\u043f\u0440\u043e\u0441, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c\u044b\u0439 \u043a\u0430\u043a null terminated \u0441\u0442\u0440\u043e\u043a\u0430 char req_index = 0; \/\/ \u0438\u043d\u0434\u0435\u0445 HTTP_req \u0431\u0443\u0444\u0435\u0440\u0430  void setup() {     \/\/ \u0412\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Ethernet \u0447\u0438\u043f\u0430     pinMode(10, OUTPUT);     digitalWrite(10, HIGH);          Serial.begin(115200);          \/\/ \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f SD \u043a\u0430\u0440\u0442\u044b     Serial.println(\"Initializing SD card...\");     if (!SD.begin(4)) {         Serial.println(\"ERROR - SD card initialization failed!\");         return;     }     Serial.println(\"SUCCESS - SD card initialized.\");     \/\/ \u041f\u043e\u0438\u0441\u043a \u0444\u0430\u0439\u043b\u0430 index.htm     if (!SD.exists(\"index.htm\")) {         Serial.println(\"ERROR - Can't find index.htm file!\");         return;     }     Serial.println(\"SUCCESS - Found index.htm file.\");      Ethernet.begin(mac, ip);     server.begin(); }  void loop() {     EthernetClient client = server.available();  \/\/ try to get client      if (client) {         boolean currentLineIsBlank = true;         while (client.connected()) {             if (client.available()) {                 char c = client.read();                 \/\/ \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 0 (null terminate \u0441\u0442\u0440\u043e\u043a\u0430)                 if (req_index &lt; (REQ_BUF_SZ - 1)) {                     HTTP_req[req_index] = c; \/\/ \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0441\u0438\u043c\u0432\u043e\u043b HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u0430                     req_index++;                 }                 Serial.print(c);    \/\/ \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u043c HTTP \u0437\u0430\u043f\u0440\u043e\u0441 \u0432 Serial                 if (c == '\\n' &amp;&amp; currentLineIsBlank) {                     client.println(\"HTTP\/1.1 200 OK\");                     client.println(\"Content-Type: text\/html\");                     client.println(\"Connnection: close\");                     client.println();                     \/\/ \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b                     if (StrContains(HTTP_req, \"GET \/ \") || StrContains(HTTP_req, \"GET \/index.htm\")) {                         webFile = SD.open(\"index.htm\");                     }                     else if (StrContains(HTTP_req, \"GET \/page2.htm\")) {                         webFile = SD.open(\"page2.htm\");                     }                     \/\/ \u041f\u043e\u0441\u044b\u043b\u0430\u0435\u043c \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043a\u043b\u0438\u0435\u043d\u0442\u0443                     if (webFile) {                         while(webFile.available()) {                             client.write(webFile.read());                         }                         webFile.close();                     }                     \/\/ \u041e\u0431\u043d\u0443\u043b\u044f\u0435\u043c \u0431\u0443\u0444\u0435\u0440                     req_index = 0;                     StrClear(HTTP_req, REQ_BUF_SZ);                     break;                 }                 if (c == '\\n') {                     currentLineIsBlank = true;                 }                  else if (c != '\\r') {                     currentLineIsBlank = false;                 }             } \/\/ end if (client.available())         } \/\/ end while (client.connected())         delay(1);         client.stop();     } \/\/ end if (client) }  \/\/ \u041e\u0431\u043d\u0443\u043b\u044f\u0435\u043c \u043c\u0430\u0441\u0441\u0438\u0432 void StrClear(char *str, char length) {     for (int i = 0; i &lt; length; i++) {         str[i] = 0;     } }  \/\/ \u0418\u0449\u0435\u043c \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435 \u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u0435 char StrContains(char *str, char *sfind) {     char found = 0;     char index = 0;     char len;      len = strlen(str);          if (strlen(sfind) > len) {         return 0;     }     while (index &lt; len) {         if (str[index] == sfind[found]) {             found++;             if (strlen(sfind) == found) {                 return 1;             }         }         else {             found = 0;         }         index++;     }      return 0; } <\/code><\/pre>\n<p>  <b>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435.<\/b> \u041d\u0435 \u0437\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c IP-\u0430\u0434\u0440\u0435\u0441, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0432 \u0441\u043a\u0435\u0442\u0447\u0435, \u043d\u0430 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0439 \u0441\u0435\u0442\u0438.<\/p>\n<p>  \u041d\u0438\u0436\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u044b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0438\u0437 2-\u0439 \u0447\u0430\u0441\u0442\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.<\/p>\n<h3><font color=\"#454cee\">HTTP \u0437\u0430\u043f\u0440\u043e\u0441<\/font><\/h3>\n<p>  \u0421\u043a\u0435\u0442\u0447 \u0431\u044b\u043b \u0438\u0437\u043c\u0435\u043d\u0435\u043d \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 HTTP_req. \u0417\u0430\u0442\u0435\u043c \u044d\u0442\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u043d\u0443\u0436\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0438\u043c\u0435\u043d\u0438 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430).<\/p>\n<p>  HTTP \u0437\u0430\u043f\u0440\u043e\u0441 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 Serial \u0438 \u044d\u0442\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0438 \u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043a\u043e\u0434\u0430.<\/p>\n<h3><font color=\"#454cee\">\u041f\u043e\u0441\u044b\u043b\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u0439 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b<\/font><\/h3>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a Arduino \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e\u043b\u0443\u0447\u0438\u043b HTTP \u0437\u0430\u043f\u0440\u043e\u0441 \u043e\u0442 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430, \u043e\u043d \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c HTTP \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u043c, \u0430 \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u0430\u043c\u0443 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.<\/p>\n<p>  \u0424\u0440\u0430\u0433\u043c\u0435\u043d\u0442 \u043a\u043e\u0434\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442 \u0432\u044b\u0431\u043e\u0440 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438:<\/p>\n<pre><code class=\"java\">\/\/ \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b if (StrContains(HTTP_req, \"GET \/ \") || StrContains(HTTP_req, \"GET \/index.htm\")) {     webFile = SD.open(\"index.htm\"); } else if (StrContains(HTTP_req, \"GET \/page2.htm\")) {     webFile = SD.open(\"page2.htm\"); } <\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u0439\u043b <b>index.htm<\/b> \u0438\u043b\u0438 \u0444\u0430\u0439\u043b <b>page2.htm<\/b> \u0441 SD \u043a\u0430\u0440\u0442\u044b \u043f\u0430\u043c\u044f\u0442\u0438. \u0421\u0430\u043c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u0430\u0439\u043b \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0443, \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0432\u043e 2-\u0439 \u0447\u0430\u0441\u0442\u0438 \u044d\u0442\u043e\u0433\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.<\/p>\n<p>  \u0414\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u0430 \u0442\u043e\u0433\u043e \u0438\u043b\u0438 \u0438\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <b>StrContains()<\/b> \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0430 HTTP_req, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0430\u044f \u0437\u0430\u043f\u0440\u043e\u0441. \u0415\u0441\u043b\u0438 \u0437\u0430\u043f\u0440\u043e\u0441 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u00abGET \/\u00bb, \u0442\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0439 \u0444\u0430\u0439\u043b index.htm.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a\u0430 HTTP \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u00abGET \/page2.htm\u00bb, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0442 \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0443 \u0444\u0430\u0439\u043b page2.htm.<\/p>\n<p>  \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 page2.htm \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 <b>index.htm<\/b>, \u0430 \u043d\u0435 \u043d\u0430 \u00ab<b>\/<\/b>\u00bb. \u041f\u043e \u044d\u0442\u043e\u0439 \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0432 \u043a\u043e\u0434\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043b\u0438 HTTP \u0437\u0430\u043f\u0440\u043e\u0441 \u0442\u0435\u043a\u0441\u0442 \u00abGET \/\u00bb \u0438\u043b\u0438 \u0442\u0435\u043a\u0441\u0442 \u00abGET \/index.htm\u00bb. \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u044d\u0442\u043e\u0433\u043e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0432 \u0432\u044b\u0448\u0435\u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u043c \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0435 \u043a\u043e\u0434\u0430.<\/p>\n<h3><font color=\"#454cee\">\u0423\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u0441\u043a\u0435\u0442\u0447\u0430<\/font><\/h3>\n<p>  \u0421\u043a\u0435\u0442\u0447 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0443\u0440\u043e\u043a\u0430 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u043d \u0431\u044b\u043b \u0441\u0434\u0435\u043b\u0430\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u043c. \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u043b\u0443\u0447\u0448\u0435\u043d, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u0442\u044c \u0438\u0437 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 (\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b) \u0438 \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u043e\u0448\u0438\u0431\u043e\u043a, \u043a\u043e\u0433\u0434\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u043c, \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 \u0438 \u0442.\u00a0\u0434.<\/p>\n<h2><font color=\"#1c22be\">\u276f<\/font> <font color=\"#454cee\"> \u041e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430 \u043e 8-\u0439 \u0447\u0430\u0441\u0442\u0438<\/font><\/h2>\n<p>  <i>\u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u0432\u0441\u0451, \u0447\u0442\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0432 \u044d\u0442\u043e\u043c \u0443\u0440\u043e\u043a\u0435, \u043c\u043e\u0436\u043d\u043e \u0441\u0432\u0435\u0441\u0442\u0438 \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443:<\/p>\n<p>  GET \u0437\u0430\u043f\u0440\u043e\u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u0431\u0443\u0444\u0435\u0440, \u0434\u0430\u043b\u0435\u0435 \u0432 \u044d\u0442\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0430\u0439\u0434\u0435\u043d\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u0442 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442\u0441\u044f \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0443.<\/p>\n<p>  \u041e\u0442\u0441\u044e\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043a\u043e\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043a\u0435\u0442\u0447 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043b\u044e\u0431\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>  <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/709986\/\">\u0427\u0430\u0441\u0442\u044c 1<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/711042\/\">\u0447\u0430\u0441\u0442\u044c 2<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/712120\/\">\u0447\u0430\u0441\u0442\u044c 3<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/714334\/\">\u0447\u0430\u0441\u0442\u044c 4<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/716362\/\">\u0447\u0430\u0441\u0442\u044c 5<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/717772\/\">\u0447\u0430\u0441\u0442\u044c 6<\/a>, <a href=\"https:\/\/habr.com\/en\/company\/timeweb\/blog\/718518\/\">\u0447\u0430\u0441\u0442\u044c 7<\/a>.<\/i><\/p>\n<p>  <a href=\"https:\/\/timeweb.cloud\/vds-vps?utm_source=habr&amp;utm_medium=banner&amp;utm_campaign\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/mx\/ua\/nb\/mxuanbovcusqgmqdgugvpnql8vq.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/mx\/ua\/nb\/mxuanbovcusqgmqdgugvpnql8vq.jpeg\" data-blurred=\"true\"\/><\/a><\/div>\n<\/div>\n<\/div>\n<p> <!----> <!----><\/div>\n<p> <!----> <!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/timeweb\/blog\/721056\/\"> https:\/\/habr.com\/ru\/company\/timeweb\/blog\/721056\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/post\/721056\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/sg\/gn\/ey\/sggneyazufubnazazkkgv2urwd8.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/sg\/gn\/ey\/sggneyazufubnazazkkgv2urwd8.jpeg\" data-blurred=\"true\"\/><\/a><\/p>\n<p>  <i><b>\u041e\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0430.<\/b> \u0412\u0441\u0451 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435 \u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0435\u0435. \u0412 \u044d\u0442\u043e\u043c \u0443\u0440\u043e\u043a\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u0432\u0443\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043d\u0430 SD \u043a\u0430\u0440\u0442\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0441\u044b\u043b\u043e\u043a \u0432 HTML \u043a\u043e\u0434\u0435 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043d\u0430 \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u044d\u0442\u0438\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u0441\u0441\u044b\u043b\u043a\u0438. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043c\u0438\u043d\u0438-\u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u0441\u0430\u0439\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0442\u044c \u0438 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/i>  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-346711","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/346711","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=346711"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/346711\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=346711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=346711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=346711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}