<?xml version='1.0' encoding='utf-8' ?>

<rss version='2.0' xmlns:lj='http://www.livejournal.org/rss/lj/1.0/' xmlns:atom10='http://www.w3.org/2005/Atom'>
<channel>
  <title>Sergej Qkowlew</title>
  <link>https://qkowlew.dreamwidth.org/</link>
  <description>Sergej Qkowlew - Dreamwidth Studios</description>
  <lastBuildDate>Sun, 03 Nov 2019 17:16:18 GMT</lastBuildDate>
  <generator>LiveJournal / Dreamwidth Studios</generator>
  <lj:journal>qkowlew</lj:journal>
  <lj:journaltype>personal</lj:journaltype>
  <image>
    <url>https://v2.dreamwidth.org/10861693/2612231</url>
    <title>Sergej Qkowlew</title>
    <link>https://qkowlew.dreamwidth.org/</link>
    <width>100</width>
    <height>91</height>
  </image>

<item>
  <guid isPermaLink='true'>https://qkowlew.dreamwidth.org/193969.html</guid>
  <pubDate>Sun, 03 Nov 2019 17:16:18 GMT</pubDate>
  <title>Webp формат. На заметку. Вебмастерам и админам хостинга.</title>
  <link>https://qkowlew.dreamwidth.org/193969.html</link>
  <description>Гугль стал продвигать &quot;более современные форматы изображений&quot;.&lt;br /&gt;&lt;br /&gt;Однако не все браусеры их поддерживают, а если даже все бы поддерживали, некоторые картинки при массовой переконвертации не конвертятся, а то и получаются большего размера.&lt;br /&gt;&lt;br /&gt;Я не сторонник усложнять конфиги веб серверов. Однако поконвертировав всё подряд в .webp, я увидел порой ДЕСЯТИкратную экономию размера без видимого изменения качества картинки. И потому соблазнён.&lt;br /&gt;&lt;br /&gt;Порывшись по просторам Интернета и исследовав, какие броусеры поддерживают, а какие нет, формат .webp (mime image/webp), я на большинстве контролируемых мной сайтов сделал так:&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://qfc.qkowlew.org/q-qhome-2019-11-03_195716.png&quot; align=&quot;right&quot; alt=&quot;настройки Media Webp плагина для WordPress&quot; width=&quot;30%&quot;&gt;&lt;br /&gt;1. Каждому файлу с расширением .png .jpg .jpeg создал файл .webp скриптом (с параметрами качества cwebp -q 85 -exact).&lt;br /&gt;1.1. Сайтам на WordPress добавил плагин Media Webp от Steven Turner с настройками на картинке справа чтобы заливаемые файлы на сайт сразу получали .webp добавки.&lt;br /&gt;2. Для сайтов под Apache добавил в корневой .htaccess строки:&lt;br /&gt;&lt;pre&gt;
&amp;lt;IfModule mod_rewrite.c&amp;gt;
RewriteEngine On

RewriteCond %{HTTP:Accept} image/webp
RewriteCond %{REQUEST_FILENAME}\.webp -s
RewriteRule ^(.*)\.([pP][nN][gG]|[jJ][pP][eE]?[gG]) $1\.$2\.webp [QSA]

# Prevent double webp and give the correct mime-type
RewriteRule \.[pP][nN][gG]\.webp$ - [T=image/webp]
RewriteRule \.[jJ][pP][gG]\.webp$ - [T=image/webp]
RewriteRule \.[jJ][pP][eE][gG]\.webp$ - [T=image/webp]

&amp;lt;/IfModule&amp;gt;
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;3. Для сайтов на Nginx в корневой конфиг nginx добавил проверку на то, поддерживает ли браусер формат webp:&lt;br /&gt;&lt;pre&gt;
map $http_accept $webpsupport {
   default 0;
   &quot;~*image/webp,*/*&quot; &quot;1&quot;;
   }
&lt;/pre&gt;&lt;br /&gt;А в virtual host&apos;ы nginx - location такого вида, чтобы при наличии .webp файла И поддержке его браусером отдавался .webp файл, а при невыполнении любого из этих двух условий - оригинальный файл:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
    location ~* \.([jJ][pP][eE]?[gG]|[pP][nN][gG])$ {
      expires max;
      add_header Pragma public;
      add_header Cache-Control &quot;max-age=31536000, public&quot;;
      set $dorewrite 0;
      if (-f $request_filename.webp) {
         set $dorewrite $webpsupport ;
      }
      if ($dorewrite) {
         rewrite ^(.*)\.([jJ][pP][eE]?[gG]|[pP][nN][gG]) $1.$2.webp last;
      }
    }
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Сделано и написано по следам и с творческой переработкой &lt;a href=&quot;https://texnoera.com/nastraivayem-otdachu-webp-v-nginx&quot;&gt;этой статьи&lt;/a&gt; и того, что написано в описании плагина Media Webp от Steven Turner (в частности, в той статье не предусмотрено отсутствие одного из файлов, а большие и маленькие буквы в расширении оригинальных файлов тоже могут быть разными, хехе).&lt;br /&gt;&lt;br /&gt;Критика приветствуется.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://gfns.net/doc/htaccess.shtml&quot;&gt;Также тут&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;https://www.dreamwidth.org/tools/commentcount?user=qkowlew&amp;ditemid=193969&quot; width=&quot;30&quot; height=&quot;12&quot; alt=&quot;comment count unavailable&quot; style=&quot;vertical-align: middle;&quot;/&gt; comments</description>
  <comments>https://qkowlew.dreamwidth.org/193969.html</comments>
  <category>хостинг</category>
  <category>хорошее</category>
  <category>техника</category>
  <category>nginx</category>
  <category>интернет</category>
  <category>apache</category>
  <lj:security>public</lj:security>
  <lj:reply-count>0</lj:reply-count>
</item>
</channel>
</rss>
