{"id":162997,"date":"2012-12-18T13:15:05","date_gmt":"2012-12-18T09:15:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=162997"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=162997","title":{"rendered":"<span class=\"post_title\">Easyweb\u00a0\u2014 XSLT-\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u043b\u044f \u0432\u0435\u0431\u0430<\/span>"},"content":{"rendered":"<div class=\"content html_format\"> \t\t\tEasyweb\u00a0\u2014 \u044d\u0442\u043e \u0432\u0435\u0440\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u00a0PHP, \u0438\u00a0\u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u0434\u0430\u0447\u0438 XML-\u043e\u0442\u0432\u0435\u0442\u0430 \u043f\u043e\u00a0HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u0443. \u0412\u00a0\u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u0435\u0436\u0438\u0442 \u0448\u0430\u0431\u043b\u043e\u043d\u0438\u0437\u0430\u0442\u043e\u0440 XSLT, \u0430\u00a0\u0441\u0430\u043c \u0434\u0432\u0438\u0436\u043e\u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0432\u00a0\u0432\u0435\u0431\u0435: \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0430\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u00a0\u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0438\u0445\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 PHP \u043a\u043b\u0430\u0441\u0441\u044b \u0438\u00a0\u0444\u0430\u0441\u0438\u043b\u0438\u0442\u0438, \u0438\u00a0\u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041f\u0440\u043e\u0435\u043a\u0442 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0431\u043e\u0440\u043d\u0438\u043a\u043e\u043c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u044b\u0445 \u0438\u00a0\u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0434\u0435\u0439, \u043d\u0430\u043a\u043e\u043f\u0438\u0432\u0448\u0438\u0445\u0441\u044f \u0437\u0430\u00a0\u0448\u0435\u0441\u0442\u044c-\u0441\u0435\u043c\u044c \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u043b\u044f \u0432\u0435\u0431\u0430.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e\u00a0\u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0442\u043e\u00a0Easyweb, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436 \u043d\u0430\u00a0Content Management Framework. \u041e\u043d, \u0432\u00a0\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u0443\u0440\u043e\u0432\u043d\u0435\u043c, \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u0432, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430\u00a0Easyweb, \u0432\u044b\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043d\u0430\u00a0XML-\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u0412\u00a0\u0442\u043e\u00a0\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u043d\u00a0\u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043d\u0438\u0436\u0435 \u0443\u0440\u043e\u0432\u043d\u0435\u043c, \u0447\u0435\u043c \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 CMS\u00a0\u2014 \u0432\u00a0\u043d\u0435\u043c \u043d\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430, \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 SQL-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>  \u0412\u00a0\u0434\u0432\u0443\u0445 \u0441\u043b\u043e\u0432\u0430\u0445, \u0441\u0430\u0439\u0442 \u0438\u043b\u0438 XML-\u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u0430\u00a0Easyweb\u00a0\u2014 \u044d\u0442\u043e XML-\u043a\u043e\u043d\u0444\u0438\u0433, \u043d\u0430\u0431\u043e\u0440 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0412\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0431\u043c\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u00a0\u0435\u0433\u043e \u043b\u044e\u0431\u0438\u043c\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0430\u0434\u043c\u0438\u043d\u043a\u0435 \u0435\u0433\u043e \u043b\u044e\u0431\u0438\u043c\u043e\u0439 \u0421\u0423\u0411\u0414. Easyweb \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u0442\u0435\u043c, \u0434\u043b\u044f \u043a\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0432\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f:<\/p>\n<ol>\n<li>\u0415\u0441\u043b\u0438 \u0432\u0430\u0441 \u043f\u043e\u00a0\u043a\u0430\u043a\u0438\u043c-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c \u043d\u0435\u00a0\u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 CMS;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u044b\u00a0\u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u00a0\u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u00ab\u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435 \u0441\u0430\u043c\u043e\u043c\u0443\u00bb;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u0430\u0441 \u043f\u0443\u0433\u0430\u0435\u0442 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u0432;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u044b\u00a0\u043b\u044e\u0431\u0438\u0442\u0435 XHTML, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0434\u0440\u0443\u0436\u043d\u043e\u0435 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e XML-\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439.<\/li>\n<\/ol>\n<p>  <a name=\"habracut\"><\/a>  <\/p>\n<h4>\u041f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044f<\/h4>\n<p>  \u041c\u043e\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441\u00a0\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0434\u043b\u044f \u0432\u0435\u0431\u0430 \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e: \u0441\u0430\u0439\u0442\u044b, \u0432\u044b\u0445\u043e\u0434\u0438\u0432\u0448\u0438\u0435 \u0438\u0437-\u043f\u043e\u0434 \u043c\u043e\u0435\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u0431\u044b\u043b\u0438 \u043a\u0430\u0448\u0435\u0439 \u0438\u0437\u00a0HTML-\u044f \u0432\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u043a\u0443 \u0441\u00a0PHP-\u0432\u0441\u0442\u0430\u0432\u043a\u0430\u043c\u0438 \u0438\u00a0\u043f\u0440\u044f\u043c\u044b\u043c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f\u043c\u0438 \u043a\u00a0\u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0447\u0435\u0440\u0435\u0437 mysql_* API. \u041e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044f\u00a0\u0443\u0436\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u0430\u0432\u043d\u043e \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043d\u0430\u00a0\u0441\u0430\u043c\u044b\u0445 \u0440\u0430\u0437\u043d\u043e\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u0430\u0445, \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u043e\u0442\u00a0\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430, \u0438\u00a0\u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u044f SQL, \u0448\u0435\u0439\u0434\u0435\u0440\u0430\u043c\u0438 \u0438\u00a0\u0410\u043b\u0435\u043a\u0441\u0430\u043d\u0434\u0440\u0435\u0441\u043a\u0443\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u00a0C++, \u044f\u00a0\u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0439 \u0432\u0435\u0431 \u043d\u0438\u043a\u043e\u043c\u0443 \u043d\u0435\u00a0\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d, \u0438\u00a0\u043d\u0443\u0436\u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u043c\u0435\u043d\u044f\u0442\u044c. \u041f\u0440\u043e\u0448\u043b\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0438\u00a0\u044f\u00a0\u0443\u0437\u043d\u0430\u043b \u043e\u0442\u00a0\u043c\u043e\u0435\u0433\u043e \u0442\u043e\u0432\u0430\u0440\u0438\u0449\u0430 \u043e\u00a0\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u0438 XSLT. \u0418\u0437\u0443\u0447\u0438\u0432 \u043c\u0430\u0442\u0447\u0430\u0441\u0442\u044c, \u044f\u00a0\u043f\u043e\u043d\u044f\u043b: \u0432\u043e\u0442 \u043e\u043d\u0430, \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f \u043c\u043e\u0435\u0439 \u043c\u0435\u0447\u0442\u044b! \u041e\u0434\u043d\u0430\u043a\u043e XSLT\u00a0\u2014 \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0438\u0437\u0430\u0442\u043e\u0440, \u0432\u00a0\u0442\u043e\u00a0\u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u043b\u044f \u0432\u0435\u0431\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437\u00a0\u0431\u043e\u043b\u0435\u0435 \u0448\u0438\u0440\u043e\u043a\u043e\u0433\u043e \u0441\u043f\u0435\u043a\u0442\u0440\u0430 \u0437\u0430\u0434\u0430\u0447. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f\u00a0\u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a.<\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 Easyweb-\u0430 \u043f\u043e\u0448\u043b\u0430 \u043f\u043e\u00a0\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044e: \u044f\u00a0\u043f\u0438\u0441\u0430\u043b \u0434\u0432\u0438\u0436\u043e\u043a \u0438\u00a0\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0438\u043c\u00a0\u0434\u043e\u00a0\u0442\u043e\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430, \u043f\u043e\u043a\u0430 \u043d\u0435\u00a0\u043d\u0430\u043a\u0430\u043f\u043b\u0438\u0432\u0430\u043b\u0430\u0441\u044c \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043c\u0430\u0441\u0441\u0430 \u043d\u043e\u0432\u044b\u0445 \u0438\u0434\u0435\u0439 (\u043e\u0431\u044b\u0447\u043d\u043e \u044d\u0442\u043e \u0437\u0430\u043d\u0438\u043c\u0430\u043b\u043e \u043d\u0435\u043c\u043d\u043e\u0433\u0438\u043c \u0431\u043e\u043b\u0435\u0435 \u0433\u043e\u0434\u0430,) \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u043b, \u0438\u00a0\u043f\u0438\u0441\u0430\u043b \u0441\u00a0\u043d\u0443\u043b\u044f \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e, \u0432\u00a0\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u043b \u0432\u0441\u0435\u00a0\u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043a\u043e\u043f\u0438\u043b\u043e\u0441\u044c \u0438\u00a0\u043d\u0430\u0431\u043e\u043b\u0435\u043b\u043e \u0437\u0430\u00a0\u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u00a0\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0440\u0435\u0438\u043d\u043a\u0430\u0440\u043d\u0430\u0446\u0438\u0435\u0439 Easyweb-\u0430.<\/p>\n<p>  \u041c\u0435\u0436\u0434\u0443 \u0442\u0440\u0435\u0442\u044c\u0435\u0439 \u0438\u00a0\u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0443\u00a0\u043c\u0435\u043d\u044f \u0432\u043e\u0437\u043d\u0438\u043a \u0446\u0435\u043b\u044b\u0439 \u0440\u044f\u0434 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u0442\u044b\u043a\u043e\u0432, \u0432\u00a0\u0441\u0432\u044f\u0437\u0438 \u0441\u00a0\u0447\u0435\u043c \u044f\u00a0\u0434\u0430\u0436\u0435 \u0432\u0441\u0435\u0440\u044c\u0435\u0437 \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0441\u044f \u043e\u00a0\u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e Easyweb-\u0430 \u043d\u0430\u00a0\u0434\u0440\u0443\u0433\u043e\u043c \u044f\u0437\u044b\u043a\u0435. \u0412\u00a0\u0442\u043e\u0439 \u0438\u043b\u0438 \u0438\u043d\u043e\u0439 \u043c\u0435\u0440\u0435 \u0431\u044b\u043b\u0438 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u044f\u0442\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043d\u0430\u00a0C++, Java, Scala, Ruby, Perl, Erlang, \u0438\u00a0\u0434\u0430\u0436\u0435 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445 Microsoft-\u0430 \u0441\u00a0\u0438\u0445 .NET-\u0430\u043c\u0438 \u0438 \u043f\u0440\u043e\u0447\u0438\u043c\u0438\u00a0IIS-\u0430\u043c\u0438. \u041e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u0441\u043b\u0435 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u043f\u043e\u043b\u0443\u0433\u043e\u0434\u0430 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u0434\u043d\u0438\u0445 \u0438\u00a0\u0442\u0435\u0445\u00a0\u0436\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441\u00a0\u0440\u0430\u0437\u043d\u044b\u0445 \u0441\u0442\u043e\u0440\u043e\u043d, \u0432\u00a0\u0438\u0442\u043e\u0433\u0435 \u0442\u0430\u043a\u0438 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u0440\u0435\u043e\u0434\u043e\u043b\u0435\u0442\u044c \u0432\u0441\u0435 \u043f\u0440\u0435\u043f\u044f\u0442\u0441\u0442\u0432\u0438\u044f \u0432\u00a0\u0440\u0430\u043c\u043a\u0430\u0445 PHP. \u0423\u0440\u0430, \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e!<\/p>\n<p>  \u0414\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044f \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u0434\u0432\u0438\u0436\u043a\u0430, \u044f\u00a0\u043f\u0440\u0438\u0448\u0435\u043b \u043a\u00a0\u0432\u044b\u0432\u043e\u0434\u0443, \u0447\u0442\u043e \u043c\u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0432\u0441\u0435 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0432\u0448\u0438\u0435 \u043b\u0438\u0447\u043d\u043e \u0443\u00a0\u043c\u0435\u043d\u044f \u0437\u0430\u00a0\u0432\u0441\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u00a0\u0432\u0435\u0431\u0435, \u0432\u00a0\u0441\u0432\u044f\u0437\u0438 \u0441\u00a0\u0447\u0435\u043c \u0431\u044b\u043b\u043e \u0440\u0435\u0448\u0435\u043d\u043e, \u0447\u0442\u043e Easyweb \u0434\u043e\u0437\u0440\u0435\u043b \u0434\u043e\u00a0\u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u0442\u0430\u0442\u044c \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c.<\/p>\n<h4>\u0422\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435<\/h4>\n<p>  \u0427\u0435\u0442\u0432\u0435\u0440\u0442\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u0432\u0438\u0436\u043a\u0430 \u0432\u0441\u0435 \u0435\u0449\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430\u00a0\u0441\u0442\u0430\u0434\u0438\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u00a0\u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u0435\u043b\u043e\u0447\u0435\u0439. \u041f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043f\u0435\u0440\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0437\u0432\u0430\u0442\u044c \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0438\u00a0\u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u044e\u0437\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0439, \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0434\u043e\u00a0\u043a\u043e\u043d\u0446\u0430 \u0433\u043e\u0434\u0430.<\/p>\n<p>  \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0430\u00a0\u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c \u044f\u0437\u044b\u043a\u0435, \u043e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e\u043a\u0430 \u0447\u0442\u043e \u043d\u0435\u00a0\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0430\u0441\u044c \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0435\u043c \u044f\u0437\u044b\u043a\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0435\u00a0\u043e\u0447\u0435\u043d\u044c \u0441\u0438\u043b\u044c\u043d\u043e \u0441\u043c\u0435\u044f\u0442\u044c\u0441\u044f \u0441\u00a0\u043c\u043e\u0435\u0433\u043e \u0440\u044f\u0437\u0430\u043d\u0441\u043a\u043e\u0433\u043e \u0430\u043a\u0446\u0435\u043d\u0442\u0430.<\/p>\n<h4>\u0411\u043b\u0438\u0436\u0435 \u043a \u0434\u0435\u043b\u0443<\/h4>\n<p>  \u042f\u00a0\u043d\u0435\u00a0\u0431\u0443\u0434\u0443 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u0432\u00a0\u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u043d\u0430 \u0435\u0441\u0442\u044c \u0432\u00a0Wiki-\u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430\u00a0GitHub-\u0435. \u041d\u0430\u043f\u0440\u043e\u0442\u0438\u0432, \u044f\u00a0\u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u0438\u0437\u043b\u043e\u0436\u0438\u0442\u044c \u0442\u043e\u0442 \u043c\u0438\u043d\u0438\u043c\u0443\u043c, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u00a0\u043f\u043e\u043d\u044f\u043b\u0438, \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d\u00a0\u043b\u0438 \u0432\u0430\u043c Easyweb \u0438\u00a0\u0432\u044b\u00a0\u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043d\u044f\u0442\u044c\u0441\u044f \u0435\u0433\u043e \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435\u043c, \u0438\u043b\u0438\u00a0\u0436\u0435 \u0432\u0430\u0441 \u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438, \u0441\u00a0\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u044b\u00a0\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\u0435 \u0432\u00a0\u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u0438\u00a0\u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u0430\u043c \u043d\u0435\u00a0\u043d\u0443\u0436\u0435\u043d.<\/p>\n<p>  Easyweb\u00a0\u2014 \u044d\u0442\u043e \u0434\u0432\u0438\u0436\u043e\u043a, \u0432\u00a0\u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435 \u043d\u0443\u0436\u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u043c\u0443. \u0412\u043e\u043e\u0431\u0449\u0435 \u0432\u0441\u0435: \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c SQL-\u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b, \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c XHTML, \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c CSS-\u0441\u0442\u0438\u043b\u0438, JavaScript-\u044b, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0426\u0435\u043b\u044c \u0438\u00a0\u0441\u043c\u044b\u0441\u043b Easyweb-\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u00a0\u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u00ab\u0432\u0441\u0451\u00bb \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e, \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u043e, \u0447\u0438\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u043e, \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e, \u043d\u0443\u00a0\u0438\u00a0\u0435\u0449\u0435 \u0441\u00a0\u0434\u0435\u0441\u044f\u0442\u043e\u043a \u0432\u0441\u044f\u043a\u0438\u0445 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u0445 \u043d\u0430\u0440\u0435\u0447\u0438\u0439.<\/p>\n<p>  \u041a\u0430\u043a \u0431\u044b\u043b\u043e \u0441\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u044b\u0448\u0435, \u0441\u0430\u0439\u0442, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u00a0Easyweb-\u0435, \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437\u00a0\u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, XML-\u043a\u043e\u043d\u0444\u0438\u0433\u0430, \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438, \u0438\u00a0\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041e\u0431\u0441\u0443\u0434\u0438\u043c \u043a\u0430\u0436\u0434\u0443\u044e \u0438\u0437\u00a0\u044d\u0442\u0438\u0445 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439, \u0438\u00a0\u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b XML- \u0438\u00a0PHP-\u0441\u043d\u0438\u043f\u043f\u0435\u0442\u043e\u0432.<\/p>\n<h5>\u0411\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445<\/h5>\n<p>  Easyweb \u043d\u0435\u00a0\u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u043d\u0430\u00a0\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u00a0\u0435\u0435\u00a0\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043f\u043e\u0434\u043e\u0439\u0442\u0438 \u0441\u00a0\u0443\u0447\u0435\u0442\u043e\u043c \u0432\u0441\u0435\u0433\u043e \u0442\u043e\u0433\u043e \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e, \u0447\u0442\u043e \u0432\u0430\u043c \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e \u043f\u0440\u043e \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445: \u043a\u043b\u044e\u0447\u0438, \u0438\u043d\u0434\u0435\u043a\u0441\u044b, foreign key constraints, \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b, \u0432\u044c\u044e\u0445\u0438, \u043d\u0443\u00a0\u0438\u00a0\u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c, \u043a\u00a0\u043f\u0440\u0438\u043c\u0435\u0440\u0443, phpMyAdmin, \u0438\u00a0\u2014 \u0432\u043f\u0435\u0440\u0435\u0434.<\/p>\n<h5>XML-\u043a\u043e\u043d\u0444\u0438\u0433<\/h5>\n<p>  \u0412\u00a0\u043a\u043e\u043d\u0444\u0438\u0433\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u043a\u0430\u043a\u0438\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0435\u0441\u0442\u044c \u043d\u0430\u00a0\u0441\u0430\u0439\u0442\u0435, \u043a\u0430\u043a\u0438\u0435 \u0435\u0441\u0442\u044c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0430\u043a\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a\u00a0\u044d\u0442\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u043c (\u0438\u00a0\u043a\u0430\u043a \u043e\u043d\u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442), \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u043a \u0440\u0435\u0433\u0443\u043b\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a\u00a0\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u043c, \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430\u043c \u0438\u00a0\u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430\u043c \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432.<\/p>\n<p>  \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;page name=&quot;book&quot; url=&quot;\/book\/(book_id -&gt; natural)\/&quot;&gt;     &lt;template src=&quot;\/tpl\/main.xsl&quot; xml=&quot;book:info(book_id -&gt; $book_id)&quot;&gt;         &lt;template name=&quot;head&quot; src=&quot;\/tpl\/home\/head.xsl&quot; \/&gt;         &lt;template name=&quot;body&quot; src=&quot;\/tpl\/home\/body.xsl&quot; \/&gt;     &lt;\/template&gt; &lt;\/page&gt; <\/code><\/pre>\n<p>  \u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445:  <\/p>\n<pre><code class=\"xml\">&lt;datasource     name=&quot;library&quot;     type=&quot;postgresql&quot;     server=&quot;192.168.10.230&quot;     username=&quot;guest&quot;     password=&quot;mZrCe3qlj92H&quot;     database=&quot;library&quot;     charset=&quot;UNICODE&quot; \/&gt; <\/code><\/pre>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;procedure name=&quot;book:list&quot; datasource=&quot;library&quot; root=&quot;books&quot; item=&quot;book&quot; empty=&quot;true&quot;&gt;     &lt;param name=&quot;author_id&quot; type=&quot;natural&quot; \/&gt;     select id, title, description from book where author_id = $author_id; &lt;\/procedure&gt; <\/code><\/pre>\n<p>  \u0427\u043b\u0435\u043d\u0441\u0442\u0432\u043e \u0432 \u0433\u0440\u0443\u043f\u043f\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;group name=&quot;editor&quot;&gt;     &lt;param name=&quot;account_id&quot; type=&quot;natural&quot; \/&gt;     account:type(account_id -&gt; $account_id) = 'editor' &lt;\/group&gt; <\/code><\/pre>\n<p>  \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;permission name=&quot;book:edit&quot;&gt;     &lt;param name=&quot;account_id&quot; type=&quot;natural&quot; \/&gt;     &lt;param name=&quot;book_id&quot; type=&quot;natural&quot; \/&gt;     editor(account_id -&gt; $account_id) and public(book_id -&gt; $book_id) &lt;\/permission&gt; <\/code><\/pre>\n<h5>\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0441\u0442\u0440\u0430\u043d\u0438\u0446<\/h5>\n<p>  \u0412\u0441\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f XSL-\u0432\u0430\u043b\u0438\u0434\u043d\u044b\u043c\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438, \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0432\u0435\u0440\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u00a0\u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 XSL- \u0438\u00a0XPath-\u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0435\u0439, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0434\u0432\u0438\u0436\u043a\u043e\u043c \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439. \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f Easyweb-\u0430 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432\u00a0\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0438\u043c\u0435\u043d \u00abwww\u00bb. \u041f\u0440\u0438\u043c\u0435\u0440 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u043a\u043e\u0440\u043d\u0435\u0432\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt; &lt;xsl:stylesheet     version=&quot;1.0&quot;     xmlns:xsl=&quot;http:\/\/www.w3.org\/1999\/XSL\/Transform&quot;     xmlns:xi=&quot;http:\/\/www.w3.org\/2001\/XInclude&quot;     xmlns:php=&quot;http:\/\/php.net\/xsl&quot;     xmlns:www=&quot;https:\/\/github.com\/nyan-cat\/easyweb&quot;     exclude-result-prefixes=&quot;xi php www&quot;&gt;     &lt;xsl:output omit-xml-declaration=&quot;yes&quot; encoding=&quot;utf-8&quot; \/&gt;     &lt;xsl:template match=&quot;\/&quot;&gt;         &lt;html xmlns=&quot;http:\/\/www.w3.org\/1999\/xhtml&quot;&gt;             &lt;head&gt;                 &lt;xi:include href=&quot;head.xml&quot; \/&gt;                 &lt;www:template name=&quot;head&quot; \/&gt;             &lt;\/head&gt;             &lt;body&gt;                 &lt;www:xslt xsl=&quot;\/xsl\/menu.xsl&quot; xml=&quot;\/xml\/menu.xml&quot; \/&gt;                 &lt;www:template name=&quot;body&quot; \/&gt;                 &lt;footer&gt;                     &lt;xsl:value-of select=&quot;www:local('footer')&quot; \/&gt;                 &lt;\/footer&gt;             &lt;\/body&gt;         &lt;\/html&gt;     &lt;\/xsl:template&gt; &lt;\/xsl:stylesheet&gt; <\/code><\/pre>\n<p>  \u041f\u0440\u0438\u043c\u0435\u0440 \u0432\u0435\u0440\u0441\u0442\u043a\u0438 \u043c\u0435\u043d\u044e (menu.xsl \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0432\u044b\u0448\u0435):  <\/p>\n<pre><code class=\"xml\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt; &lt;xsl:stylesheet version=&quot;1.0&quot;     xmlns:xsl=&quot;http:\/\/www.w3.org\/1999\/XSL\/Transform&quot;     xmlns:php=&quot;http:\/\/php.net\/xsl&quot;     xmlns:www=&quot;https:\/\/github.com\/nyan-cat\/easyweb&quot;     exclude-result-prefixes=&quot;php www&quot;&gt;     &lt;xsl:output omit-xml-declaration=&quot;yes&quot; encoding=&quot;utf-8&quot; \/&gt;     &lt;xsl:template match=&quot;menu&quot;&gt;         &lt;xsl:for-each select=&quot;item&quot;&gt;             &lt;a href=&quot;{@href}&quot;&gt;                 &lt;xsl:value-of select=&quot;www:local(@name)&quot; \/&gt;             &lt;\/a&gt;&lt;xsl:if test=&quot;position() != last()&quot;&gt; | &lt;\/xsl:if&gt;         &lt;\/xsl:for-each&gt;     &lt;\/xsl:template&gt; &lt;\/xsl:stylesheet&gt; <\/code><\/pre>\n<p>  \u0412\u0435\u0440\u0441\u0442\u043a\u0430 \u0441\u043f\u0438\u0441\u043a\u0430 \u043a\u043d\u0438\u0433, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043e\u0439. XSL-\u0448\u0430\u0431\u043b\u043e\u043d \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432\u00a0\u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;www:xslt xsl=&quot;\/xsl\/book-list.xsl&quot; xml=&quot;book:list(author_id -&gt; $author_id)&quot; \/&gt; <\/code><\/pre>\n<p>  \u0412\u0435\u0440\u0441\u0442\u043a\u0430 \u0441\u0440\u0430\u0437\u0443 \u0432\u00a0\u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0448\u0430\u0431\u043b\u043e\u043d\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;xsl:for-each select=&quot;www:query('book:list', 'author_id -&gt; $author_id')\/books\/book&quot;&gt;     &lt;h3&gt;&lt;xsl:value-of select=&quot;title&quot; \/&gt;&lt;\/h3&gt;     &lt;xsl:copy-of select=&quot;description&quot; \/&gt; &lt;\/xsl:for-each&gt; <\/code><\/pre>\n<h5>\u041b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/h5>\n<p>  \u0414\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432 \u043c\u0443\u043b\u044c\u0442\u0438\u044f\u0437\u044b\u0447\u043d\u044b\u0445 \u0441\u0430\u0439\u0442\u043e\u0432 \u0432\u00a0Easyweb-\u0435 \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d XML-\u0444\u0430\u0439\u043b \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430. \u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u0430\u043a\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430:  <\/p>\n<pre><code class=\"xml\">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot; ?&gt; &lt;local&gt;     &lt;home&gt;         &lt;title&gt;             &lt;en&gt;Chinese Cuisine&lt;\/en&gt;             &lt;ru&gt;\u041a\u0438\u0442\u0430\u0439\u0441\u043a\u0430\u044f \u043a\u0443\u0445\u043d\u044f&lt;\/ru&gt;             &lt;zh&gt;\u4e2d\u56fd\u83dc&lt;\/zh&gt;         &lt;\/title&gt;         &lt;description&gt;             &lt;en&gt;                 Welcome to Nannan Zhang personal website about chinese cuisine.                 Feel free to contact me at &lt;a href=&quot;mailto:nannan@zhang.com&quot;&gt;nannan@zhang.com&lt;\/a&gt;.             &lt;\/en&gt;             &lt;ru&gt;                 \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u0430\u0439\u0442 \u041d\u0430\u043d\u043d\u0430\u043d \u0414\u0436\u0430\u043d\u0433,                 \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u044b\u0439 \u043a\u0438\u0442\u0430\u0439\u0441\u043a\u043e\u0439 \u043a\u0443\u0445\u043d\u0435. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u0441\u043e \u043c\u043d\u043e\u0439                 \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 &lt;a href=&quot;mailto:nannan@zhang.com&quot;&gt;nannan@zhang.com&lt;\/a&gt;.             &lt;\/ru&gt;             &lt;zh&gt;                 \u5173\u4e8e\u4e2d\u5f0f\u7f8e\u98df\uff0c\u6b22\u8fce\u8bbf\u95ee\u5f20\u5357\u5357\u4e2a\u4eba\u7f51\u7ad9\u3002                 \u5782\u8be2\u90ae\u7bb1\uff1a&lt;a href=&quot;mailto:nannan@zhang.com&quot;&gt;nannan@zhang.com&lt;\/a&gt;             &lt;\/zh&gt;         &lt;\/description&gt;     &lt;\/home&gt; &lt;\/local&gt; <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437\u00a0\u044d\u0442\u043e XML-\u044f \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 XPath-\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0438\u00a0\u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0435 \u0430\u043b\u044c\u044f\u0441\u044b, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u0441\u043e\u0431\u043e\u0439 \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u043d\u0443\u044e \u0444\u043e\u0440\u043c\u0443 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u0443\u0442\u0438 \u043a\u00a0\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u043d\u043e\u0434\u0435. \u041f\u0440\u0438\u043c\u0435\u0440 \u0432\u044b\u0432\u043e\u0434\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432\u00a0XSL-\u0448\u0430\u0431\u043b\u043e\u043d\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;xsl:copy-of select=&quot;www:local('home:description')&quot; \/&gt; <\/code><\/pre>\n<h5>\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432<\/h5>\n<p>  \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0432\u00a0\u043a\u043e\u043d\u0444\u0438\u0433\u0435:  <\/p>\n<pre><code class=\"xml\">&lt;page     name=&quot;book:edit:post&quot;     url=&quot;\/book\/edit\/post\/&quot;     action=&quot;\/php\/book-edit.php&quot;     permission=&quot;book:edit(account_id -&gt; $session:account_id, book_id -&gt; $post:id)&quot; \/&gt; <\/code><\/pre>\n<p>  \u0421\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 book-edit.php:  <\/p>\n<pre><code class=\"php\">&lt;?php function action($www, $response) {     $www-&gt;query('book:edit', array     (         'book_id'     =&gt; post::hidden('id'),         'title'       =&gt; post::text('title'),         'description' =&gt; post::textarea('description')     ));      $response-&gt;location('\/book\/' . post::hidden('id') . \/); } ?&gt; <\/code><\/pre>\n<p>  \u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c \u043a\u0430\u0440\u0442\u0438\u043d\u043e\u043a:  <\/p>\n<pre><code class=\"php\">&lt;?php function action($www, $response) {     foreach(files::get('picture.+') as $file)     {         $image = image::load($file['name']);         $scaled = $image-&gt;fit_to_width_copy(800);         $image_id = $www-&gt;evaluate('image:create');         $scaled-&gt;save(fs::normalize('\/images\/pictures\/' . $image_id));     } } ?&gt; <\/code><\/pre>\n<h4>\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b<\/h4>\n<p>  \u041d\u0430\u00a0\u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0434\u0432\u0438\u0436\u043e\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 PHP-\u043a\u043b\u0430\u0441\u0441 XSLTProcessor, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432\u00a0\u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 libxslt. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e XSLT 1.0 \u0438\u00a0XPath 1.0. \u0425\u043e\u0440\u043e\u0448\u0435\u0439 \u043d\u043e\u0432\u043e\u0441\u0442\u044c\u044e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f\u00a0\u0442\u043e, \u0447\u0442\u043e XSLTProcessor \u0432\u00a0\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c EXSLT. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e\u00a0\/ \u0435\u0441\u043b\u0438 \u0432\u00a0PHP \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u00a0XSLT\/XPath 2.0, \u043e\u043d\u00a0\u0441\u0440\u0430\u0437\u0443\u00a0\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d \u0432\u00a0Easyweb.<\/p>\n<p>  \u0412\u00a0\u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 API \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a\u00a0\u0421\u0423\u0411\u0414 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f PHP PDO, \u043f\u043e\u044d\u0442\u043e\u043c\u0443, \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438, Easyweb \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 12\u00a0\u0442\u0438\u043f\u043e\u0432 \u0421\u0423\u0411\u0414 (<a href=\"http:\/\/php.net\/manual\/ru\/pdo.drivers.php\">http:\/\/php.net\/manual\/ru\/pdo.drivers.php<\/a>), \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0435\u0433\u043a\u043e \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u043e\u0434 \u043b\u044e\u0431\u0443\u044e \u0434\u0440\u0443\u0433\u0443\u044e \u0421\u0423\u0411\u0414, \u0438\u043c\u0435\u044e\u0449\u0443\u044e PDO-\u0434\u0440\u0430\u0439\u0432\u0435\u0440 (\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0437\u0430\u0441\u0430\u0431\u043c\u0438\u0442\u0438\u0442\u044c feature request \u0441\u00a0\u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0421\u0423\u0411\u0414 \u0438\u00a0\u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043d\u0430\u00a0\u0435\u0435\u00a0PDO-\u0434\u0440\u0430\u0439\u0432\u0435\u0440). \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 Easyweb-\u0430 \u043b\u0435\u0433\u043a\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 (\u0430\u0432\u0442\u043e\u0440\u0443 \u0434\u0432\u0438\u0436\u043a\u0430, \u0442\u043e\u00a0\u0435\u0441\u0442\u044c\u00a0\u2014 \u043c\u043d\u0435) \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0438\u00a0\u0434\u0440\u0443\u0433\u0438\u0445 \u0421\u0423\u0411\u0414, \u043d\u0435\u00a0\u0438\u043c\u0435\u044e\u0449\u0438\u0445 PDO-\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 (\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440\u00a0\u2014 MongoDB), \u0447\u0442\u043e, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0438\u00a0\u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u00a0\u0431\u0443\u0434\u0443\u0449\u0435\u043c.<\/p>\n<p>  \u0410\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0438-\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0445 \u0442\u0435\u0441\u0442\u043e\u0432 \u043f\u043e\u00a0\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0435\u00a0\u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u043e\u0433\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u043b\u0438\u0448\u044c \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u0430\u0431\u043b\u044e\u0434\u0435\u043d\u0438\u0439, \u043d\u0430\u043a\u043e\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u043c\u0435\u0440\u043e\u0432 \u0442\u0430\u0439\u043c\u0438\u043d\u0433\u043e\u0432, \u0438\u00a0\u0430\u043d\u0430\u043b\u0438\u0437\u043e\u043c \u043b\u043e\u0433\u043e\u0432 \u0430\u043f\u0430\u0447\u0430 \u0441\u00a0\u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u044b\u043c \u0437\u0430\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u00a0htop. \u0418\u0442\u0430\u043a, \u0432\u043e\u0442 \u0447\u0442\u043e \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e:<\/p>\n<ul>\n<li>\u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0430\u044f \u0433\u043e\u0441\u0442\u0435\u0432\u0430\u044f \u043a\u043d\u0438\u0433\u0430 \u0438\u0437\u00a0\u0443\u0447\u0435\u0431\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043d\u0430\u00a0GitHub-\u0435, \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u00a0\u043b\u0435\u043d\u0442\u043e\u0439 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u00a00.005\u00a0\u2014 0.01 \u0441\u0435\u043a\u0443\u043d\u0434 \u043d\u0430\u00a0\u043d\u0435\u0434\u043e\u0440\u043e\u0433\u043e\u0439 VDS-\u043a\u0435. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f VDS-\u043a\u0438, \u043e\u0434\u043d\u0430\u043a\u043e, \u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u043d\u043e \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u0430;<\/li>\n<li>\u0421\u0430\u0439\u0442 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u00ab\u0434\u043e\u0441\u043a\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00bb. \u0412\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0443\u0440\u043e\u0432\u043d\u044f Intel Xeon E3\u00a0\u0432\u044b\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 ~10 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043e\u0442\u00a0\u043f\u043e\u0438\u0441\u043a\u043e\u0432\u044b\u0445 \u0431\u043e\u0442\u043e\u0432 \u0432\u00a0\u0441\u0443\u0442\u043a\u0438, \u0438, \u0441\u0443\u0434\u044f \u043f\u043e\u00a0htop-\u0443, \u0443\u00a0\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0435\u0449\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0437\u0430\u043f\u0430\u0441 \u0432\u00a0\u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437;<\/li>\n<li>\u0421\u0430\u0439\u0442 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u00ab\u0434\u043e\u0441\u043a\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0439\u00bb \u043d\u0430\u00a0\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0434\u0432\u0438\u0436\u043a\u0430 \u0438\u00a0\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0443\u0440\u043e\u0432\u043d\u044f Intel i7\u00a0\u0432 \u0441\u0432\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441\u00a0\u0431\u0443\u0440\u043d\u044b\u043c \u043d\u0430\u043f\u043b\u044b\u0432\u043e\u043c \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435\u043b\u0435\u0439, \u043f\u043e\u0440\u044f\u0434\u043a\u0430 5000 \u2014 10000 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0437\u0430\u00a015\u00a0\u043c\u0438\u043d\u0443\u0442. \u0417\u0430\u043c\u0435\u0434\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0430\u0439\u0442\u0430 \u043d\u0435\u00a0\u043d\u0430\u0431\u043b\u044e\u0434\u0430\u043b\u043e\u0441\u044c. \u0412\u00a0\u0442\u043e\u00a0\u0436\u0435 \u0432\u0440\u0435\u043c\u044f, \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u0432\u0438\u0436\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u0435\u0435, \u0447\u0435\u043c \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f.<\/li>\n<\/ul>\n<h4>\u0414\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u043f\u043b\u0430\u043d\u044b \u0438 \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u044f<\/h4>\n<p>  \u041d\u0430\u00a0\u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u00a0\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0435 \u0431\u0443\u0434\u0443\u0449\u0435\u0435 \u0437\u0430\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 (\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e, \u043b\u0438\u0431\u043e \u043f\u043e\u0434\u0431\u043e\u0440 \u0433\u043e\u0442\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u043d\u0438\u043c):  <\/p>\n<ol>\n<li>\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0421\u0423\u0411\u0414, \u043d\u0435\u00a0\u0438\u043c\u0435\u044e\u0449\u0438\u0445 PDO-\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430, \u043f\u043e\u00a0\u043c\u0435\u0440\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u0447\u044c\u0438\u0445-\u043b\u0438\u0431\u043e \u043f\u043e\u0436\u0435\u043b\u0430\u043d\u0438\u0439;<\/li>\n<li>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0447\u0430\u0441\u0442\u0435\u0439 \u043f\u0430\u0440\u0441\u0438\u043d\u0433\u0430 \u0441 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043e\u043a \u043d\u0430 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 LL(1)<\/li>\n<li>ORM-\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438\u043b\u0438 \u0435\u0435\u00a0\u043f\u043e\u0434\u043e\u0431\u0438\u0435;<\/li>\n<li>\u0424\u0430\u0441\u0435\u0442\u043d\u044b\u0439 \u043f\u043e\u0438\u0441\u043a;<\/li>\n<li>\u041f\u043e\u043b\u043d\u043e\u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u043f\u043e\u0438\u0441\u043a;<\/li>\n<li>\u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0434\u043b\u044f \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u043d\u0430\u00a0\u043a\u043b\u0438\u0435\u043d\u0442\u0435 (AJAX \u0438\u043b\u0438 WebSockets \u043d\u0430\u00a0\u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430, \u0438, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, JSON-over-HTTP \u043d\u0430\u00a0\u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430).<\/li>\n<\/ol>\n<h4>\u0421\u0441\u044b\u043b\u043a\u0438<\/h4>\n<p>  \u0420\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 Easyweb: <a href=\"https:\/\/github.com\/nyan-cat\/easyweb\">github.com\/nyan-cat\/easyweb<\/a><br \/>  \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f: <a href=\"https:\/\/github.com\/nyan-cat\/easyweb\/wiki\">github.com\/nyan-cat\/easyweb\/wiki<\/a><br \/>  \u0423\u0447\u0435\u0431\u043d\u044b\u0439 \u043f\u0440\u0438\u043c\u0435\u0440 \u00ab\u0433\u043e\u0441\u0442\u0435\u0432\u0430\u044f \u043a\u043d\u0438\u0433\u0430\u00bb: <a href=\"https:\/\/github.com\/nyan-cat\/easybook\">github.com\/nyan-cat\/easybook<\/a><\/p>\n<p>  \u0421\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. \u0412 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u043e\u0442\u0432\u0435\u0447\u0443 \u043d\u0430 \u0432\u0430\u0448\u0438 \u0432\u043e\u043f\u0440\u043e\u0441\u044b. \t\t\t \t\t\t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/162997\/\"> http:\/\/habrahabr.ru\/post\/162997\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\"> \t\t\tEasyweb\u00a0\u2014 \u044d\u0442\u043e \u0432\u0435\u0440\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u00a0PHP, \u0438\u00a0\u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u044b\u0434\u0430\u0447\u0438 XML-\u043e\u0442\u0432\u0435\u0442\u0430 \u043f\u043e\u00a0HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u0443. \u0412\u00a0\u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u0435\u0436\u0438\u0442 \u0448\u0430\u0431\u043b\u043e\u043d\u0438\u0437\u0430\u0442\u043e\u0440 XSLT, \u0430\u00a0\u0441\u0430\u043c \u0434\u0432\u0438\u0436\u043e\u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043d\u0430\u0431\u043e\u0440 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447 \u0432\u00a0\u0432\u0435\u0431\u0435: \u0440\u043e\u0443\u0442\u0438\u043d\u0433 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432, \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0430\u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0430, \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u00a0\u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0438\u0445\u00a0\u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f, \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 PHP \u043a\u043b\u0430\u0441\u0441\u044b \u0438\u00a0\u0444\u0430\u0441\u0438\u043b\u0438\u0442\u0438, \u0438\u00a0\u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041f\u0440\u043e\u0435\u043a\u0442 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441\u0431\u043e\u0440\u043d\u0438\u043a\u043e\u043c \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u044b\u0445 \u0438\u00a0\u043a\u043e\u043d\u0446\u0435\u043f\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0434\u0435\u0439, \u043d\u0430\u043a\u043e\u043f\u0438\u0432\u0448\u0438\u0445\u0441\u044f \u0437\u0430\u00a0\u0448\u0435\u0441\u0442\u044c-\u0441\u0435\u043c\u044c \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u043b\u044f \u0432\u0435\u0431\u0430.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e\u00a0\u043a\u043b\u0430\u0441\u0441\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0442\u043e\u00a0Easyweb, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u0445\u043e\u0436 \u043d\u0430\u00a0Content Management Framework. \u041e\u043d, \u0432\u00a0\u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435, \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u0443\u0440\u043e\u0432\u043d\u0435\u043c, \u0447\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u0432, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430\u00a0Easyweb, \u0432\u044b\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043d\u0430\u00a0XML-\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u0445. \u0412\u00a0\u0442\u043e\u00a0\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u043d\u00a0\u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043d\u0438\u0436\u0435 \u0443\u0440\u043e\u0432\u043d\u0435\u043c, \u0447\u0435\u043c \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 CMS\u00a0\u2014 \u0432\u00a0\u043d\u0435\u043c \u043d\u0435\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430, \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0438\u043b\u0438 \u043f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 SQL-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432.<\/p>\n<p>  \u0412\u00a0\u0434\u0432\u0443\u0445 \u0441\u043b\u043e\u0432\u0430\u0445, \u0441\u0430\u0439\u0442 \u0438\u043b\u0438 XML-\u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u0430\u00a0Easyweb\u00a0\u2014 \u044d\u0442\u043e XML-\u043a\u043e\u043d\u0444\u0438\u0433, \u043d\u0430\u0431\u043e\u0440 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u0412\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u043e\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u0431\u043c\u0430\u0441\u0442\u0435\u0440\u043e\u043c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u00a0\u0435\u0433\u043e \u043b\u044e\u0431\u0438\u043c\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0435, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0430\u0434\u043c\u0438\u043d\u043a\u0435 \u0435\u0433\u043e \u043b\u044e\u0431\u0438\u043c\u043e\u0439 \u0421\u0423\u0411\u0414. Easyweb \u0431\u0443\u0434\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u0442\u0435\u043c, \u0434\u043b\u044f \u043a\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0432\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f:<\/p>\n<ol>\n<li>\u0415\u0441\u043b\u0438 \u0432\u0430\u0441 \u043f\u043e\u00a0\u043a\u0430\u043a\u0438\u043c-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430\u043c \u043d\u0435\u00a0\u0443\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044e\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 CMS;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u044b\u00a0\u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u0435\u0442\u0435\u0441\u044c \u043e\u00a0\u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u00ab\u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0441\u0435 \u0441\u0430\u043c\u043e\u043c\u0443\u00bb;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u0430\u0441 \u043f\u0443\u0433\u0430\u0435\u0442 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u043e\u0432;<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0432\u044b\u00a0\u043b\u044e\u0431\u0438\u0442\u0435 XHTML, \u0430\u00a0\u0442\u0430\u043a\u0436\u0435 \u0434\u0440\u0443\u0436\u043d\u043e\u0435 \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e XML-\u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439.<\/li>\n<\/ol>\n<p>  <\/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-162997","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/162997","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=162997"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/162997\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=162997"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=162997"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=162997"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}