<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
    <title>Azimut7 Blog</title>
    <link>https://azimut7.com/</link>
    <description>The Latest news and recent blog posts from Azimut7 team</description>
    <language>en</language>
    <atom:link href="https://azimut7.com/rss/feed" rel="self" type="application/rss+xml"/>

          <item>
        <title><![CDATA[ NGINX redirect that matches query string via MAP directive ]]></title>
        <link>https://azimut7.com/blog/nginx-redirect-map</link>
        <description><![CDATA[ Suppose we need to make NGINX redirect&amp;nbsp;according to this scheme: example.com/tags?tag=cool =&amp;gt; example.com/something&amp;nbsp; The original url with parameters must be redirected to the new url. The parameter name and value&amp;nbsp;are not used in the new url. A standard&amp;nbsp;redirect for this type... ]]></description>
        <pubDate>2020-05-10T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">75</guid>
      </item>
          <item>
        <title><![CDATA[ Website design process ]]></title>
        <link>https://azimut7.com/blog/design-process</link>
        <description><![CDATA[ Most people have little or no idea about how websites are designed. Results are right there, but how much work went into them is not clear at all. Designing a website might seem like a quick and simple task,&amp;nbsp; but sometimes it takes many hundreds of hours. In this article we&#039;ll introduce you to... ]]></description>
        <pubDate>2019-05-19T17:31:59+03:00</pubDate>
        <dc:creator>Azimut7</dc:creator>
        <guid isPermaLink="false">66</guid>
      </item>
          <item>
        <title><![CDATA[ Image fragment joints in SVG ]]></title>
        <link>https://azimut7.com/blog/svg-image-fragments</link>
        <description><![CDATA[ In composite SVG images at the junctions of fragments, the background can be illuminated, this is especially noticeable in browsers: Solution You need to create a background layer of the same shape as the main image and choose a gradient that matches the color transitions: In Sketch (version 50),... ]]></description>
        <pubDate>2018-06-10T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Sobin</dc:creator>
        <guid isPermaLink="false">25</guid>
      </item>
          <item>
        <title><![CDATA[ Configuration forms and Ajax API in Drupal 8 ]]></title>
        <link>https://azimut7.com/blog/config-forms-and-ajax-drupal8</link>
        <description><![CDATA[ Everyone understands how the usual configuration form works, created using the Form API. The user clicks the Save button:&amp;nbsp;the page reloads,&amp;nbsp;the form is updated. But what if we need to change some form values without reloading the page? Ajax API will help us. Consider the use of the example... ]]></description>
        <pubDate>2018-03-27T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">26</guid>
      </item>
          <item>
        <title><![CDATA[ Custom form field in Drupal 8 ]]></title>
        <link>https://azimut7.com/blog/custom-form-field-drupal8</link>
        <description><![CDATA[ It so happens that when creating forms, the developer lacks all the predefined field types that are in the Form API. In this case, you can write your custom form element based on the Drupal 8 FormElement class. Consider the development of such field based on a time field. And then on the basis of... ]]></description>
        <pubDate>2018-03-10T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">27</guid>
      </item>
          <item>
        <title><![CDATA[ Drupal 8 and Redis, part 3: clearing the external cache ]]></title>
        <link>https://azimut7.com/blog/drupal8-and-redis-page-cache-3</link>
        <description><![CDATA[ In the first two articles of this series we looked at how to make Nginx serve pages directly from Redis, which helps to dramatically speed up your website and reduce load on the web server. This article will show you how to clear Redis Page Cache. Actually, the way we are going to do it is... ]]></description>
        <pubDate>2017-10-19T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">65</guid>
      </item>
          <item>
        <title><![CDATA[ Drupal 8 and Redis, part 2: a review of the module and NGINX configuration ]]></title>
        <link>https://azimut7.com/blog/drupal8-and-redis-page-cache-2</link>
        <description><![CDATA[ In the first part I introduced you to the basics of making NGINX read pages directly from Redis. It helps to dramatically speed up your website and reduce load on the web server. Now let&#039;s look at the implementation in more detail. Drupal 8 and&amp;nbsp;Redis, part 1: NGINX serve content directly out of... ]]></description>
        <pubDate>2017-10-18T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">64</guid>
      </item>
          <item>
        <title><![CDATA[ Drupal 8 and Redis, part 1: NGINX serve content directly out of a Redis cache ]]></title>
        <link>https://azimut7.com/blog/drupal8-and-redis-page-cache-1</link>
        <description><![CDATA[ There are many ways to speed up your website and reduce load on the web server by using a cache. I reviewed different types of caching in the previous article and in this series I&#039;ll try to show you how to get the best performance with minimum configuring. Drupal 8 and Redis, part&amp;nbsp;1:... ]]></description>
        <pubDate>2017-10-17T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">63</guid>
      </item>
          <item>
        <title><![CDATA[ How to compile dynamic modules for NGINX (HTTP Redis as an example) ]]></title>
        <link>https://azimut7.com/blog/dynamic-modules-nginx</link>
        <description><![CDATA[ Connecting additional modules to NGINX is not the most trivial thing for web developers. Consider this task in the example build NGINX with the HTTP Redis module (ngx_http_redis). Previously, to connect modules to NGINX, it was necessary to fully compile both the web server and the required modules,... ]]></description>
        <pubDate>2017-10-15T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">33</guid>
      </item>
          <item>
        <title><![CDATA[ Overview of caching strategies on the server ]]></title>
        <link>https://azimut7.com/blog/cache-strategies-overview</link>
        <description><![CDATA[ There are many different ways to organize caching. Consider the main. NGINX acts everywhere as a web server. In some cases, it can be Apache. I do not dwell on how to implement this or that option, these schemes can be considered as a cheat sheet. It is important to note that traffic is everywhere... ]]></description>
        <pubDate>2017-09-10T17:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">32</guid>
      </item>
          <item>
        <title><![CDATA[ Hot to install the latest NGINX on Ubuntu 16 ]]></title>
        <link>https://azimut7.com/blog/install-last-nginx-version</link>
        <description><![CDATA[ Consider installing the latest NGINX version&amp;nbsp;on a server running Ubuntu 16. Let&#039;s check which version is already installed and which one we want to install: nginx -v 1. If necessary, delete the current version: sudo apt remove nginx nginx-common nginx-full nginx-core sudo systemctl unmask nginx... ]]></description>
        <pubDate>2017-09-10T12:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">34</guid>
      </item>
          <item>
        <title><![CDATA[ Drupal 8 and GraphQL. Part 2 ]]></title>
        <link>https://azimut7.com/blog/drupal8-and-graphql-2</link>
        <description><![CDATA[ GraphQL module for Drupal is poorly documented and the existing documentation is behind on new versions of the module. In these two articles I will share my experience with this module and what I found reading Stack overflow and issues on Github.&amp;nbsp; Drupal 8 and&amp;nbsp;GraphQL. Part 1 Drupal 8... ]]></description>
        <pubDate>2017-09-05T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">61</guid>
      </item>
          <item>
        <title><![CDATA[ Drupal 8 and GraphQL. Part 1 ]]></title>
        <link>https://azimut7.com/blog/drupal8-and-graphql-1</link>
        <description><![CDATA[ GraphQL module for Drupal is poorly documented and the existing documentation is behind on new versions of the module. In these two articles I will share my experience with this module and what I found reading Stack overflow and issues on Github. The module is being developed and my findings might... ]]></description>
        <pubDate>2017-09-03T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">60</guid>
      </item>
          <item>
        <title><![CDATA[ Debug NGINX variables from the request headers ]]></title>
        <link>https://azimut7.com/blog/nginx-variables-debug</link>
        <description><![CDATA[ The NGINX web server has a number of built-in variables whose values may be needed in certain situations. Consider a small snippet that will help you understand their meaning. Quote from the documentation: The ngx_http_core_module module supports embedded variables with names matching the Apache... ]]></description>
        <pubDate>2017-08-19T17:00:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">28</guid>
      </item>
          <item>
        <title><![CDATA[ Google reCAPTCHA and Drupal 8 ]]></title>
        <link>https://azimut7.com/blog/custom-google-recaptcha-drupal8</link>
        <description><![CDATA[ All internet users repeatedly encountered various captcha. In short, this is an abbreviation of &quot;Completely Automated Public Turing Test to Tell Computers and Humans Apart&quot;. A person can easily and quickly solve the problem of recognition of distorted or intersecting letters or numbers. To confirm... ]]></description>
        <pubDate>2017-05-19T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">31</guid>
      </item>
          <item>
        <title><![CDATA[ Connecting Semantic UI to Angular 2 ]]></title>
        <link>https://azimut7.com/blog/semanticui-and-angular2</link>
        <description><![CDATA[ There is a project for a bundle of Angular 2 and Semantic UI&amp;nbsp;— ngSemantic. For simple use of the Semantic UI, this plugin is great, but if you lack its functionality, you can connect the Semantic UI yourself. To build Semantic UI we... ]]></description>
        <pubDate>2016-12-07T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">22</guid>
      </item>
          <item>
        <title><![CDATA[ Configure Angular 2 and Webpack ]]></title>
        <link>https://azimut7.com/blog/setup-angular2-and-webpack</link>
        <description><![CDATA[ In the documentation for Angular 2, the main focus is on working with System JS. An example of a quick start application from the Angular team is also based on SystemJS. I want to talk about setting up Angular 2 with Webpack. There are few&amp;nbsp;of different starters for working&amp;nbsp;Angular with... ]]></description>
        <pubDate>2016-12-05T17:31:59+03:00</pubDate>
        <dc:creator>Alena Belotserkovskaya</dc:creator>
        <guid isPermaLink="false">21</guid>
      </item>
          <item>
        <title><![CDATA[ Configuring XHprof in Drupal 7 ]]></title>
        <link>https://azimut7.com/blog/xhprof-and-drupal7</link>
        <description><![CDATA[ Profiling is the collection of data about how different pieces of code are executed in your program. With this data, you can optimize your app&#039;s performance or just get a better idea of how your code works. There are two main solutions for PHP: Xdebug and XHprof. With Xdebug you can profile the code... ]]></description>
        <pubDate>2016-12-02T10:00:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">29</guid>
      </item>
          <item>
        <title><![CDATA[ Form API in Drupal 7 ]]></title>
        <link>https://azimut7.com/blog/drupal7-form-api</link>
        <description><![CDATA[ Let&#039;s consider Forms&amp;nbsp;step by step, on the example of our own module. Create a module called azimut 7_forms, which will create a single page with the address /azimut7_forms available to all visitors. azimut7_forms.info: name = Azimut7 forms. description = Drupal Form API examples. core=7.x... ]]></description>
        <pubDate>2016-02-01T17:31:59+03:00</pubDate>
        <dc:creator>Evgeniy Tristamov</dc:creator>
        <guid isPermaLink="false">49</guid>
      </item>
          <item>
        <title><![CDATA[ Accelerate the website or fake CDN for Drupal 7 ]]></title>
        <link>https://azimut7.com/blog/accelerate-website-or-fake-cdn-drupal7</link>
        <description><![CDATA[ Browsers can simultaneously handle about 6-8 http requests. To speed up static loading (images, css and js files, and so on), you can create a CDN emulation and return statics from several domains. “Racing” in the browser will be less and this will increase the number of simultaneously processed... ]]></description>
        <pubDate>2016-01-19T12:31:59+03:00</pubDate>
        <dc:creator>Alexey Doronin</dc:creator>
        <guid isPermaLink="false">62</guid>
      </item>
    
  </channel>
</rss>
