<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>xela.ru &#187; Интернет штучки</title>
	<atom:link href="http://www.xela.ru/category/internet/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xela.ru</link>
	<description>Блог о фотографии, ее обработке в фотошопе, кино и интернете</description>
	<lastBuildDate>Fri, 30 Jul 2010 05:49:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Как изменить кодировку базы данных</title>
		<link>http://www.xela.ru/2010/02/kak-izmenit-kodirovku-bazy-dannyx/</link>
		<comments>http://www.xela.ru/2010/02/kak-izmenit-kodirovku-bazy-dannyx/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 09:31:11 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[vds]]></category>
		<category><![CDATA[vps]]></category>
		<category><![CDATA[базы данных]]></category>
		<category><![CDATA[кодировка]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=2155</guid>
		<description><![CDATA[Несколько раз при перезде на другой хостинг сталкивался с проблемой кодировки базы данных MySQL. Выглядит проблема следующим образом: заливаем сайт, настраиваем, затем восстанавливаем базу данных из дампа и вместо русских букв видим знаки вопроса или вообще непонятные символы. Связано это с тем, что многие хостеры не настраивают сервер для корректной работы с русской кодировкой. Особенно [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2157" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="kak-izmenit-kodirovku-bazy-dannyx-pic1" src="http://www.xela.ru/wp-content/uploads/2010/02/kak-izmenit-kodirovku-bazy-dannyx-pic1.jpg" alt="kak-izmenit-kodirovku-bazy-dannyx-pic1" width="150" height="119" />Несколько раз при перезде на другой хостинг сталкивался с проблемой кодировки базы данных MySQL. Выглядит проблема следующим образом: заливаем сайт, настраиваем, затем восстанавливаем базу данных из дампа и вместо русских букв видим знаки вопроса или вообще непонятные символы. Связано это с тем, что многие хостеры не настраивают сервер для корректной работы с русской кодировкой. Особенно часто такая проблема встречается при переходе на VPS-тарифы, которые дают больше ресурсов, но предполагают и более высокий уровень знаний пользователей.</p>
<p><span id="more-2155"></span>В большинстве случаев проблема возникает из-за того, что таблицы, которые использует база данных MySQL, созданы в кодировке latin1. Для того, чтобы проверить это, нужно зайти в PHPMyAdmin и прямо на первой странице посмотреть на &#8220;Сопоставление соединения с MySQL&#8221;.</p>
<p><img class="alignnone size-full wp-image-2166" title="kak-izmenit-kodirovku-bazy-dannyx-pic2" src="http://www.xela.ru/wp-content/uploads/2010/02/kak-izmenit-kodirovku-bazy-dannyx-pic2.jpg" alt="kak-izmenit-kodirovku-bazy-dannyx-pic2" width="510" height="181" /></p>
<p>Если там указано &#8220;<strong>latin1_swedish_ci</strong>&#8221; или что-то аналогичное, то русские буквы не будут отображаться.</p>
<p>Чтобы исправить эту проблему нужен доступ к конфигурационному файлу MySQL. Обычно на сервере он находится в директории &#8220;<strong>etc</strong>&#8220;:</p>
<blockquote><p>/etc/my.cnf</p></blockquote>
<p>Как я уже писал в статье про <a href="http://www.xela.ru/2009/12/nastrojka-servera-apache-na-vps/" >настройку Apache</a>, желательно, чтобы на сервере был установлен <strong>Midnight Commander</strong>, любая навигация и изменения с его помощью намного удобнее и проще.</p>
<p>Итак, используя MC или другим доступным способом находим нужный файл и добавляем следующие строки в секцию &#8220;<strong>[mysqld]</strong>&#8220;:</p>
<blockquote><p>default-character-set=cp1251<br />
character-set-server=cp1251<br />
collation-server=cp1251_general_ci<br />
init-connect=&#8221;SET NAMES cp1251&#8243;<br />
skip-character-set-client-handshake</p></blockquote>
<p>Файл, после изменений сохраняем. Теперь нужно перезапустить весь сервер или непосредственно сервер БД MySQL при помощи следующей комманды:</p>
<blockquote><p>service mysqld restart</p></blockquote>
<p>Чтобы проверить кодировку необходимо с главного экрана PHPMyAdmin перейти в раздел &#8220;<strong>Базы данных</strong>&#8220;, в нижней строке столбца &#8220;<strong>Сравнение</strong>&#8221; должно быть значение &#8220;<strong>cp1251_general_ci</strong>&#8220;. Так же кодировку можно проверить SQL-запросом:</p>
<blockquote><p>SHOW VARIABLES LIKE &#8216;ch%&#8217;;</p></blockquote>
<p>После приведенных выше изменений, русские буквы должны отображаться нормально, если этого не происходит, то возможно проблема кроется уже в настройках php или браузера.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=2155&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2010/02/kak-izmenit-kodirovku-bazy-dannyx/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Настройка сервера Apache на VPS</title>
		<link>http://www.xela.ru/2009/12/nastrojka-servera-apache-na-vps/</link>
		<comments>http://www.xela.ru/2009/12/nastrojka-servera-apache-na-vps/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 12:50:39 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[httpd]]></category>
		<category><![CDATA[maxclients]]></category>
		<category><![CDATA[vds]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=1274</guid>
		<description><![CDATA[Я уже писал про настройку Apache на VPS в контексте оптимизации работы, чтобы не переходить на новый более дорогой тарифный план. Но всякая оптимизация имеет пределы и наступает момент, когда ресурсов все равно перестает хватать. В этом случае перехода на сервер с большим количеством выделенных ресурсов не избежать. Обычно Apache на хостинге настроен по-умолчанию и [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1280" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="nastrojka-servera-apache-na-vps-pic1" src="http://www.xela.ru/wp-content/uploads/2009/12/nastrojka-servera-apache-na-vps-pic1.jpg" alt="nastrojka-servera-apache-na-vps-pic1" width="150" height="150" />Я уже писал про <a href="http://www.xela.ru/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache/" >настройку Apache на VPS</a> в контексте оптимизации работы, чтобы не переходить на новый более дорогой тарифный план. Но всякая оптимизация имеет пределы и наступает момент, когда ресурсов все равно перестает хватать. В этом случае перехода на сервер с большим количеством выделенных ресурсов не избежать. Обычно Apache на хостинге настроен по-умолчанию и эти настройки подходят разве что для малопосещаемого ресурса с минимумом запросов. Постараюсь разобрать, как правильно настроить сервер, для достижения максимальной производительности и оптимального потребления ресурсов.</p>
<p><span id="more-1274"></span><a href="http://www.xela.ru/wp-content/uploads/2009/12/nastrojka-servera-apache-na-vps-pic2.jpg" ><img class="size-thumbnail wp-image-1285 alignright" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="nastrojka-servera-apache-na-vps-pic2" src="http://www.xela.ru/wp-content/uploads/2009/12/nastrojka-servera-apache-na-vps-pic2-150x150.jpg" alt="nastrojka-servera-apache-na-vps-pic2" width="150" height="150" /></a>В большинстве случаев при покупке <strong>VPS </strong>клиенту дается доступ к серверу по <strong>SSH</strong>, и именно он понадобится нам для настройки параметров Apache. Для серверов не всегда предусмотрена программа для SSH-доступа, поэтому может понадобится клиент для нашего компьютера. Я использую бесплатную программу <strong>Putty</strong>, которую можно скачать со <noindex><a rel="nofollow" href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html"  target="_blank">странички разработчика</a></noindex>. Она не требует установки, а основные настройки сводятся к указанию адреса сервера, к которому будем подключаться. После подключения к серверу, появится коммандная строка с приглашением ввести логин и, затем, пароль.</p>
<p><a href="http://www.xela.ru/wp-content/uploads/2009/12/nastrojka-servera-apache-na-vps-pic3.jpg" ><img class="alignleft size-thumbnail wp-image-1289" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="nastrojka-servera-apache-na-vps-pic3" src="http://www.xela.ru/wp-content/uploads/2009/12/nastrojka-servera-apache-na-vps-pic3-150x150.jpg" alt="nastrojka-servera-apache-na-vps-pic3" width="150" height="150" /></a>Для более удобной навигации по файловой системе было бы хорошо, чтобы на сервере стоял файловый менеджер <strong>Midnight Commander</strong>. Подробнее про него можно почитать в <noindex><a rel="nofollow" href="http://ru.wikipedia.org/wiki/Midnight_Commander"  target="_blank">википедии</a></noindex>. Если он не установлен, то можно попросить хостера или установить самому.</p>
<p>Вызывается Midnight Commander из коммандной строки при помощи комманды &#8220;<strong>mc</strong>&#8220;. При помощи этой программы работа становится намного проще и не требует каких-то специальных знаний, а кроме этого, все необходимые комманды, которые понадобятся нам в процессе настройки вынесены вниз и легко доступны.</p>
<p>Перед тем, как приступить непосредственно к настройке нам нужно определить какой модуль многопоточной обработки (<strong>MPM</strong>) Используется на сервере. Для этого выполняем команду:</p>
<blockquote><p><span>httpd -V|grep MPM</span></p></blockquote>
<p>В большинстве случаев ответ сервера будет следующем:</p>
<blockquote><p><span>Server MPM:     Prefork<br />
-D APACHE_MPM_DIR=&#8221;server/mpm/prefork&#8221;</span></p></blockquote>
<p>Это означает, что используется модуль &#8220;<strong>prefork</strong>&#8221; и в файле конфигурации мы будем править секцию, которая описывает работу этого модуля.</p>
<p>Теперь через Midnight Commander находим и открываем необходимый нам конфигурационный файл, который расположен здесь:</p>
<blockquote><p><span>/etc/httpd/conf/httpd.conf</span></p></blockquote>
<p>Для начала находим &#8220;<strong>KeepAlive</strong>&#8221; и если стоит значение &#8220;<strong>Off</strong>&#8220;, то меняем его на &#8220;<strong>On</strong>&#8220;. Затем ищем секцию, в которой описываются настройки для нашего MPM. В случае &#8220;<strong>prefork</strong>&#8221; она будет первой:</p>
<blockquote><p><span># prefork MPM<br />
&lt;IfModule prefork.c&gt;<br />
[...]<br />
&lt;/IfModule&gt;</span></p>
<p># worker MPM<br />
&lt;IfModule worker.c&gt;<br />
[...]<br />
&lt;/IfModule&gt;</p></blockquote>
<p>Это как раз и есть настройки сервера Apache. Если кому-то интересно, что они из себя представляют, то можно почитать об этом в моей первой статье по настройке <a href="http://www.xela.ru/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache/" >Apache на VPS</a>. Ниже примеры конфигураций по-умолчанию и рекомендуемой для серверов с высокой нагрузкой.</p>
<blockquote>
<table style="border-collapse: collapse; width: 217pt;" border="0" cellspacing="0" cellpadding="0" width="291">
<col style="width: 113pt;" width="151"></col>
<col style="width: 52pt;" span="2" width="70"></col>
<tbody>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt; width: 165pt;" colspan="2" width="221" height="20">Настройки по-умолчанию</td>
<td style="width: 52pt;" width="70"></td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">StartServers</td>
<td></td>
<td align="right">1</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MinSpareServers</td>
<td></td>
<td align="right">1</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxSpareServers</td>
<td></td>
<td align="right">5</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxClients</td>
<td></td>
<td align="right">10</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">KeepAliveTimeout</td>
<td></td>
<td align="right">3</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxRequestsPerChild</td>
<td></td>
<td align="right">4000</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20"></td>
<td></td>
<td></td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" colspan="3" height="20">Настройки   для сильно нагруженных проектов</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">StartServers</td>
<td></td>
<td align="right">15</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MinSpareServers</td>
<td></td>
<td align="right">15</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxSpareServers</td>
<td></td>
<td align="right">20</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">ServerLimit</td>
<td></td>
<td align="right">50</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxClients</td>
<td></td>
<td align="right">50</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">KeepAliveTimeout</td>
<td></td>
<td align="right">3</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxKeepAliveRequests</td>
<td></td>
<td align="right">100</td>
</tr>
<tr style="height: 15.05pt;" height="20">
<td style="height: 15.05pt;" height="20">MaxRequestsPerChild</td>
<td></td>
<td align="right">2000</td>
</tr>
</tbody>
</table>
</blockquote>
<p>Я использую &#8220;средние&#8221; между этими двумя конфигурациями значения, которые вывел для своего сервера опытным путем. Основной критерий &#8211; наличие свободной памяти в период нагрузки на сервер. Ее значение должно быть минимальным, в противным случае страницы будут отдаваться пользователям медленно, а сервер будет недогружен. При этом следует помнить, что и в своп система не должна уходить.</p>
<p>Все изменения, которые мы сделали в <span>&#8220;httpd.conf&#8221;</span>, потом нужно дублировать в этом файле:</p>
<blockquote><p><span><span>/etc/httpd/conf.d/swtune.conf</span></span></p></blockquote>
<p>Иногда его нет на сервере, тогда ничего делать не надо.</p>
<p>После того, как все сделано, для применения изменений, перегружаем сервер apache командой:</p>
<blockquote><p><span>service httpd restart</span></p></blockquote>
<p>И оцениваем результат. Я постарался добиться, чтобы в пик нагрузки количество свободной памяти составляло где-то 32мб, этого достаточно, чтобы сервер не зависал, даже при работе с панелью управления, а ресурсы при этом использовались максимально.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=1274&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/12/nastrojka-servera-apache-na-vps/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Плагины к Firefox на каждый день.</title>
		<link>http://www.xela.ru/2009/11/plaginy-k-firefox-na-kazhdyj-den/</link>
		<comments>http://www.xela.ru/2009/11/plaginy-k-firefox-na-kazhdyj-den/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 10:11:17 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[браузер]]></category>
		<category><![CDATA[плагины]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=1107</guid>
		<description><![CDATA[Прошло уже почти полгода, как я поменял браузер IE на Firefox. Хочу сказать, что впечатления самые положительные, в интерфейсе все удобно, а программа работает очень быстро и практически безглючно. Стоит отметить, что я пользуюсь линейкой 3.0.ХХ, а не новым модным 3.5.ХХ. Может быть и обновлюсь, но на данный момент меня все устраивает. Итак, за 6 [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1113" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="plaginy-k-firefox-na-kazhdyj-den-pic1" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic1.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic1" width="150" height="150" />Прошло уже почти полгода, как я поменял <a href="http://www.xela.ru/2009/05/firefox-kak-zamena-ie/" >браузер IE на Firefox</a>. Хочу сказать, что впечатления самые положительные, в интерфейсе все удобно, а программа работает очень быстро и практически безглючно. Стоит отметить, что я пользуюсь линейкой 3.0.ХХ, а не новым модным 3.5.ХХ. Может быть и обновлюсь, но на данный момент меня все устраивает. Итак, за 6 месяцев использования, подобралось некоторое количество плагинов, которыми я пользуюсь каждый день. Об этих интересных для меня дополнениях я и хочу рассказать.</p>
<p><span id="more-1107"></span>Первый плагин в списке это <strong>Яндекс.Бар</strong>. Вообще-то он шел в комплекте с самим браузером, но я не стал его отключать т.к. довольно часто пользуюсь сервисами Яндекса, такими, как &#8220;Фотки&#8221;, &#8220;Деньги&#8221; и почтой. Кроме этого в баре есть отображение погоды и пробок, что тоже удобно.</p>
<p><img class="alignnone size-full wp-image-1116" title="plaginy-k-firefox-na-kazhdyj-den-pic2" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic2.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic2" width="562" height="111" /></p>
<p>Для людей, которые пользуются не только поиском Яндекса, но и дополнительными сервисами этот плагин будет очень полезен. Он позволяет получить доступ к своим сервисам в 1 клик и заметно экономит время. Скачать его можно как в комплекте с <noindex><a rel="nofollow" href="http://fx.yandex.ru/?kold"  target="_blank">браузером</a></noindex> Firefox, так и <noindex><a rel="nofollow" href="http://bar.yandex.ru/firefox/"  target="_blank">отдельно</a></noindex>.</p>
<p>О втором плагине я уже писал, но упомяну его еще раз &#8211; это <strong>NoSquint</strong>. Он позволяет задавать постоянное увеличение масштаба страницы, что просто необходимо для мониторов с большим разрешением.</p>
<p><img class="alignnone size-full wp-image-1119" title="plaginy-k-firefox-na-kazhdyj-den-pic3" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic3.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic3" width="560" height="314" /></p>
<p>У него есть дополнительные возможности, по изменению цвета ссылок, текста и бэкграунда сайтов, но я пользуюсь только масштабом. <noindex><a rel="nofollow" href="http://urandom.ca/nosquint/"  target="_blank">Страница плагина</a></noindex>.</p>
<p>Следующее дополнение &#8211; <strong>Fast Dial</strong>, позволяет создавать визуальные закладки для наиболее часто посещаемых сайтов. В последней версии Яндекс.Бара есть аналогичная возможность, но я пользуюсь именно Fast Dial&#8217;ом.</p>
<p><img class="alignnone size-full wp-image-1121" title="plaginy-k-firefox-na-kazhdyj-den-pic4" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic4.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic4" width="531" height="384" /></p>
<p>В плагине можно настраивать количество закладок, их расположение, плюс есть темы для оформления самой страницы. Закладки работают очень быстро и позволяют избежать постоянного набирания одних и тех же адресов сайтов. Скачать плагин можно <noindex><a rel="nofollow" href="http://userlogos.org/extensions/fastdial"  target="_blank">отсюда</a></noindex>.</p>
<p>Четвертый плагин &#8211; <strong>Fission, </strong>не имеет какой-либо практической ценности, но улучшает внешний вид браузера. Он совмещает адресную строку и индикатор загрузки страницы.</p>
<p><img class="alignnone size-full wp-image-1126" title="plaginy-k-firefox-na-kazhdyj-den-pic5" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic5.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic5" width="554" height="81" /></p>
<p>Можно выбрать цвет индикации. Получается красиво, а иногда может быть и полезно, например для оценки скорости загрузки страницы. Скачать Fission можно <noindex><a rel="nofollow" href="http://mozilla.zeniko.ch/fission.html"  target="_blank">тут</a></noindex>.</p>
<p><a href="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic6.jpg" ><img class="alignleft size-medium wp-image-1132" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="plaginy-k-firefox-na-kazhdyj-den-pic6" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic6-204x249.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic6" width="204" height="249" /></a>Следующая надстройка у меня недавно, но я считаю его едва ли не самым полезным, это <strong>Read It Later</strong>. Часто попадаются сайты, которые не будешь читать каждый день, но к отдельным страницам хочется вернуться позже, чтобы подробнее их посмотреть. Обычно такие сайты отправляются в избранное, и забываются там.</p>
<p>С помощью Read It Later можно одним кликом заносить интересные страницы в микрозакладки, а затем так же просто извлекать. При этом после нажатия по закладке страница исчезает из них, т.е. замусоревания не происходит, прочитал и закладка сама стерлась. Еще одной удобной функцией является показ времени с момента добавления закладки. Помогает решить полезна ли информация, которую добавили давно и не вернулись к ней.</p>
<p>У плагина много разных вариантов для отображения списка закладок, и каждый может настроить его на свой вкус. Очень удобная надстройка, всем советую попробовать. Страничка этого <noindex><a rel="nofollow" href="http://readitlaterlist.com/firefox/"  target="_blank">плагина</a></noindex>.</p>
<p>Два последних дополнения нужны мне для работы с сайтами, поэтому всем, кто с этим не связан они вряд ли пригодятся. Первое, под названием MeasureIt &#8211; это экранная рулетка. Позволяет измерить ширину и высоту любого элемента на экране браузера, причем, при изменении масштаба, все равно считает реальные цифры.</p>
<p><a href="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic7.jpg" ><img class="size-large wp-image-1136 alignnone" title="plaginy-k-firefox-na-kazhdyj-den-pic7" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic7-500x275.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic7" width="500" height="275" /></a></p>
<p>Очень нужная функция при верстке сайтов. Обозначив параметры, область можно передвигать по экрану, но несколько неудобно, что нельзя изменить ее размеры, для этого нужно создать ее заново. Из-за этого плагин не на 100% выполняет свою функцию, но лучшего пока найти не удалось. Страничка с которой можно его <noindex><a rel="nofollow" href="http://www.kevinfreitas.net/extensions/measureit/"  target="_blank">скачать</a></noindex>.</p>
<p>А второй плагин, а вернее целый набор для работы с сайтами &#8211; это монстр SeoQuake. Он позволяет оценить основные параметры сайта, такие как ТИЦ, PR, количество страниц в индексе, внешние ссылки и т.д.</p>
<p><img class="alignnone size-full wp-image-1137" title="plaginy-k-firefox-na-kazhdyj-den-pic8" src="http://www.xela.ru/wp-content/uploads/2009/11/plaginy-k-firefox-na-kazhdyj-den-pic8.jpg" alt="plaginy-k-firefox-na-kazhdyj-den-pic8" width="557" height="58" /></p>
<p>Есть полезная возможность отображения ссылок, которые закрыты <a href="http://www.xela.ru/2009/08/tegi-noindex-i-nofollow/" >тэгами Noindex, Nofollow</a> от поисковиков, перечеркнутыми. И еще очень много нужных людям, которые занимаются SEO, функций. При некоторых операциях, например анализе ссылок, плагин заметно тормозит браузер. Сайт для скачки <noindex><a rel="nofollow" href="http://www.seoquake.com/guide.php?sln=ru"  target="_blank">плагина</a></noindex>.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=1107&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/11/plaginy-k-firefox-na-kazhdyj-den/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Тэги noindex и nofollow.</title>
		<link>http://www.xela.ru/2009/08/tegi-noindex-i-nofollow/</link>
		<comments>http://www.xela.ru/2009/08/tegi-noindex-i-nofollow/#comments</comments>
		<pubDate>Mon, 10 Aug 2009 10:21:46 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[nofollow]]></category>
		<category><![CDATA[noindex]]></category>
		<category><![CDATA[внешние ссылки]]></category>
		<category><![CDATA[основы seo]]></category>
		<category><![CDATA[тэги]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=588</guid>
		<description><![CDATA[Довольно часто возникает необходимость уменьшить число внешних ссылок на сайте. Чтобы сделать это используются тэги noindex и nofollow. Первый используется для Яндекса, второй для остальных поисковых систем и в первую очередь для Google. Об их применении на страницах сайта мы и поговорим.
Не секрет, что поисковые системы в своей работе используют &#8220;ссылочные&#8221; рейтинги &#8211; Тиц у [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-589" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="tegi-noindex-i-nofollow-pic1" src="http://www.xela.ru/wp-content/uploads/2009/08/tegi-noindex-i-nofollow-pic1.jpg" alt="tegi-noindex-i-nofollow-pic1" width="99" height="73" />Довольно часто возникает необходимость уменьшить число внешних ссылок на сайте. Чтобы сделать это используются тэги noindex и nofollow. Первый используется для Яндекса, второй для остальных поисковых систем и в первую очередь для Google. Об их применении на страницах сайта мы и поговорим.<br />
<span id="more-588"></span>Не секрет, что поисковые системы в своей работе используют &#8220;ссылочные&#8221; рейтинги &#8211; Тиц у Яндекса и Page Rank у Google. При их расчете одной из переменных является количество внешних (ведущих на другие) ссылок с сайта. Большое их число может отрицательно сказаться на значениях этих рейтингов. При этом на каждом сайте можно найти несколько внешних ссылок, это счетчики посещений, ссылки на разработчиков сайта, кнопки добавления в закладки и т.д., а для блогов еще и блоки с комментариями, в которых авторы могут оставлять ссылки на свои сайты.</p>
<p>Чтобы спрятать эти ссылки от поисковых роботов было предложено несколько изменить синтаксис тэга ссылки &lt;a&gt; путем добавления атрибута <strong>rel=&#8221;nofollow&#8221;</strong>. При этом сама ссылка меняется только для поисковых роботов &#8211; они не переходят по ней, а для обычных пользователей все остается по-старому. Пример:</p>
<blockquote><p>&lt;a href=&#8221;http://www.xela.ru&#8221;&gt;Мой сайт&lt;/a&gt;<br />
обычная ссылка, видимая поисковиком и влияющая на рейтинг</p>
<p>&lt;a href=&#8221;http://www.xela.ru&#8221; rel=&#8221;nofolow&#8221;&gt;Мой сайт&lt;/a&gt;<br />
ссылка видимая пользователям, но игнорируемая поисковиками.</p></blockquote>
<p>Решение эффективное, правда с одним но, Яндекс при обработке сайта не обращает внимания на такое дополнение к ссылкам и продолжает их индексировать. Но и тут выход есть, а именно тэг <strong>noindex</strong>. Этот тэг не принят никем кроме Яндекса и при проверке кода на правильность может расцениваться как ошибка, но это единственный способ скрыть ссылку от поискового робота.  Пример:</p>
<blockquote><p>&lt;noindex&gt;Все, что тут написано не будет проиндексировано Яндексом, а эта &lt;a href=&#8221;http://xela.ru&#8221; rel=&#8221;nofollow&#8221;&gt;ссылка&lt;/a&gt; еще и остальными поиковиками.&lt;/noindex&gt;</p></blockquote>
<p>Стоит добавить, что noindex, как и большинство html-тэгов, двойной и скрывает от Яндекса все, что &#8220;обернуто&#8221; в него, а не только ссылки, поэтому применять его нужно очень осторожно и обязательно закрывать.</p>
<p>Кроме того, что спрятав таким образом ссылки мы не передаем вес с нашего сайта, при помощи этого добавления можно оптимизировать структуру сайта, спрятав от поисковиков баннеры, повторяющийся контент и служебные ссылки, которые не важны в поиске.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=588&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/08/tegi-noindex-i-nofollow/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>О файле robots.txt</title>
		<link>http://www.xela.ru/2009/07/o-fajle-robotstxt/</link>
		<comments>http://www.xela.ru/2009/07/o-fajle-robotstxt/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 09:17:17 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[robots.txt]]></category>
		<category><![CDATA[карта сайта]]></category>
		<category><![CDATA[основы seo]]></category>
		<category><![CDATA[поисковики]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=513</guid>
		<description><![CDATA[Периодически возникает необходимость закрыть от поисковых роботов те или иные служебные папки и дублирующийся контент на сайтах. Сделать это можно при помощи файла robots.txt. В файле можно указать какие файлы и папки сайта какие роботы могут индексировать, можно запретить часть контента для одних и открыть для других. Файл описывается в документе опубликованном на http://www.robotstxt.org/orig.html. Стандарт [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-531" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="o-fajle-robotstxt-pic1" src="http://www.xela.ru/wp-content/uploads/2009/07/o-fajle-robotstxt-pic1.jpg" alt="o-fajle-robotstxt-pic1" width="150" height="71" />Периодически возникает необходимость закрыть от поисковых роботов те или иные служебные папки и дублирующийся контент на сайтах. Сделать это можно при помощи файла robots.txt. В файле можно указать какие файлы и папки сайта какие роботы могут индексировать, можно запретить часть контента для одних и открыть для других. Файл описывается в документе опубликованном на <noindex><a rel="nofollow" href="http://www.robotstxt.org/orig.html"  target="_blank">http://www.robotstxt.org/orig.html</a></noindex>. Стандарт нестрогий и сейчас к нему есть несколько общепринятых дополнений, которые понимают все основные поисковые роботы.<span id="more-513"></span><br />
Для корректной обработки файл должен находится в корневой директории сайта (http://site.ru/robots.txt) и называться robots.txt и никак иначе (регистр букв имеет значение). Внутри файл состоит из названия поискового робота &#8220;<strong>User-agent:</strong>&#8221; и списка правил для него. Названия самых крупных поисковых роботов:</p>
<blockquote><p>#Яндекc<br />
User-agent: Yandex</p>
<p>#Гугл<br />
User-Agent: googlebot</p>
<p>#Рамблер<br />
User-agent: StackRambler</p>
<p>#Yahoo<br />
User-agent: Slurp</p>
<p>#MSN<br />
User-agent: msnbot</p>
<p>#Правило общее для всех роботов:<br />
User-agent:   *</p></blockquote>
<p>Помимо основных, есть еще вспомогательные роботы, которые индексируют картинки или комментарии к блогам, поэтому лучше писать правила индексации для всех роботов, а затем дополнять их необходимыми расширениями для конкретных роботов.</p>
<p>После указания кому, мы должны написать что делать. Для этого существует документированная запрещающая директива &#8220;<strong>Disallow:</strong>&#8221; и недокументированная, но поддерживаемая на данный момент всеми крупными роботами разрешающая &#8220;<strong>Allow:</strong>&#8220;. Для того, чтобы запретить индексацию директории нужно указать ее путь, причем для каталогов путь должен начинаться с символа &#8220;/&#8221; и им же заканчиваться. Например &#8220;Disallow: /dir/&#8221; закроет для роботов каталог &#8220;/dir&#8221;, который находится в корне сайта, и все вложенные каталоги и файлы, а если написать &#8220;Disallow:/dir&#8221;, то будут закрыты все документы лежащие в корне и начинающиеся на dir, к примеру каталог &#8220;/dir1&#8243;,  файл &#8220;/director.htm&#8221; и т.д. Чтобы закрыть файл завершающую черту ставит не надо. Пример:</p>
<blockquote><p>#обращаемся к роботу гугла<br />
User-Agent: googlebot<br />
Disallow: /cgi-bin/ #закрываем директорию cgi-bin в корне сайта<br />
Disallow:/css/main.css<br />
#закрываем файл main.css, который лежит в директории css</p></blockquote>
<p>Директива &#8220;Allow:&#8221; действует по тому же принципу. Пример:</p>
<blockquote><p>#обращаемся к роботу яндекса<br />
User-agent: Yandex<br />
Allow: /uploads/images/ #открываем папку images в папке uploads<br />
Disallow: /uploads/<br />
#закрываем папку uploads</p></blockquote>
<p>Директивы выполняются по мере поступления, при этом приоритет имеют те, которые находятся ближе к началу. Пример:</p>
<blockquote><p>#обращаемся к роботу яндекса<br />
User-agent: Yandex<br />
Disallow: /test/ #закрываем папку test<br />
Allow: /test/images/<br />
#доступ к папке images будет закрыт т.к. верхнее правило имеет<br />
#приоритет</p>
<p>#обращаемся к роботу яндекса<br />
User-agent: Yandex<br />
Allow: /test/images/ #папка images в папке test открыт<br />
Disallow: /test/<br />
#закрываем папку test при этом папка images будет открыта<br />
#т.к. верхнее правило имеет приоритет</p></blockquote>
<p>Если необходимо разрешить или запретить к индексации весь сайт без исключений, то можно использовать два решения:</p>
<blockquote><p>#обращаемся ко всем роботам<br />
User-agent: *<br />
Allow: / #или<br />
Disallow:<br />
#директивы равнозначны и <span style="color: #ff0000;">разрешают </span>к индексации весь сайт</p>
<p>#обращаемся ко всем роботам<br />
User-agent: *<br />
Allow: #или<br />
Disallow: /<br />
#директивы равнозначны и <span style="color: #ff0000;">запрещают </span>к индексации весь сайт</p></blockquote>
<p>Для справки, в директивах можно использовать служебные символы &#8220;*&#8221; и &#8220;$&#8221;. Они помогают при создании масок файлов и/или каталогов. Спецсимвол &#8220;*&#8221; заменяет собой любую комбинацию символов, т.е. по умолчанию он как бы ставится в конце любого пути после последнего &#8220;/&#8221;, а спецсимвол &#8220;$&#8221; его отменяет. В большинстве случаев лучше обойтись без применения этих символов т.к. они существенно запутывают файл robots.txt. Пример:</p>
<blockquote><p>#обращаемся ко всем роботам<br />
User-agent: *<br />
Disallow:  /abc* # блокирует все файлы и папки начинающимся с abc<br />
Disallow: /abc*$ # равнозначное выражение<br />
Disallow: /abc # равнозначное выражение без спецсимволов<br />
Disallow: /modules$<br />
# запрещает только /modules, не запрещает /modules.html</p></blockquote>
<p>Помимо описанных выше основных, есть еще дополнительные директивы, они выполняются не всеми поисковыми роботами, поэтому их написание в файле лучше перенести в конец, а при возможности и вовсе отказаться от них.</p>
<p>При большом количестве страниц на сайте или при сильной нагрузке на сервер поисковые роботы могут затруднять работу создавая большое количество запросов. Чтобы ограничить их активность есть директива &#8220;<strong>Crawl-delay:</strong>&#8220;. Она задает время после закачки страницы в секундах, через которое можно закачивать следующую страницу. Робот Гугла (<strong>googlebot</strong>) эту директиву не обрабатывает. Гарантированно она работает с Яндексом (<strong>Yandex</strong>).</p>
<p>Еще одна дополнительная директива &#8211; &#8220;<strong>Host:</strong>&#8220;. При запросе сайта, мы можем набирать название с www или без и видеть один и тот же сайт, а для поисковиков это 2 разных сайта, которые &#8220;склеиваются&#8221; и показывается результат только для того, который считается &#8220;главным&#8221;. Данная директива нужна, чтобы указать в явном виде главное зеркало сайта. Опять же Гугл не понимает эту директиву, но с Яндексом она работает, хотя и является необязательной и не всегда оказывает результат на выдачу. Пример для обеих директив:</p>
<blockquote><p>#обращаемся ко всем роботам<br />
User-agent: *<br />
Disallow:  /abc* # блокирует все файлы и папки начинающимся с abc</p>
<p>#обращаемся к роботу Яндекса<br />
User-agent: Yandex<br />
Crawl-delay: 5 #разрешает забирать страницы раз в 5 секунд<br />
Host: www.site.ru<br />
#главное зеркало сайта &#8211; www.</p></blockquote>
<p>Несколько особняком стоит директива &#8220;<strong>Sitemap:</strong>&#8220;. Она помогает поисковым роботам быстрее находить файл с картой сайта. При ее применении не нужно указывать &#8220;User-agent&#8221;. Лучше всего располагать ее через пустую строку в конце файла. Пример:</p>
<blockquote><p>#обращаемся ко всем роботам<br />
User-agent: *<br />
Disallow:  /abc* # блокирует все файлы и папки начинающимся с abc</p>
<p>Sitemap: www.site.ru/sitemap.xml<br />
#показывает путь к файлу sitemap.xml</p></blockquote>
<p>При написании файла robots.txt необходимо соблюдать несколько общепринятых правил, которые позволяют роботам правильно расшифровывать инструкции.  В общем случае файл обязательно должен начинаться с указания &#8220;User-agent:&#8221;, сразу после нее, без пустых строк, должна находится хотя бы одна директива &#8220;Disallow:&#8221;. Директивы &#8220;User-agent:&#8221; должны быть отделены друг от друга пустыми строками. Комментарии начинаются с символа &#8220;#&#8221;, если они располагаются внутри директивы &#8220;User-agent:&#8221;, то не должны быть на отдельной строке. Все дополнительные директивы должны идти ближе к концу файла т.к. могут быть не поняты роботом. В каждой директиве &#8220;Disallow:&#8221; должен быть только одно правило.</p>
<p>Еще одно добавление- мета тэг robots. Он не относится напрямую к файлу robots.txt, но выполняет сходные функции. Располагаться должен между &lt;head&gt; и &lt;/head&gt; страницы сайта. Синтаксис следующий:</p>
<blockquote><p>&lt;meta name=&#8221;robots&#8221; content=&#8221;noindex, nofollow&#8221; /&gt;<br />
noindex означает не индексировать страницу, nofollow &#8211; не следовать по ссылкам. Могут быть варианты, например:</p>
<p>&lt;meta name=&#8221;robots&#8221; content=&#8221;noindex, follow&#8221; /&gt;<br />
не индексировать данную страницу, но пройти по ссылкам;</p>
<p>&lt;meta name=&#8221;robots&#8221; content=&#8221;index, nofollow&#8221; /&gt;<br />
индексировать страницу, но не идти по ссылкам;</p>
<p>&lt;meta name=&#8221;robots&#8221; content=&#8221;index, follow&#8221; /&gt;<br />
разрешено индексировать и идти по ссылкам.</p></blockquote>
<p><span style="color: #ff0000;">Важно!</span> не стоит закрывать при помощи robots.txt папки и файлы, в которых может содержаться конфиденциальная информация. Этот метод не дает достаточной защиты т.к. прячет файлы только от поисковиков, а человек, просмотрев этот файл, наоборот может найти необходимую информацию о расположении важных файлов и папок. Устанавливать парольную защиту следует через файл &#8220;.htaccess&#8221; или другими методами.</p>
<p>Для того, чтобы проверить правильность, файла robots.txt на Яндексе и Гугле существуют специальные инструменты:<br />
- <noindex><a rel="nofollow" href="http://webmaster.yandex.ru/wmconsole/public_robots_txt.xml"  target="_blank">Яндекс.Вебмастер</a></noindex><br />
- <noindex><a rel="nofollow" href="http://www.google.ru/webmasters/"  target="_blank">Инструменты Гугл для веб-мастеров</a></noindex></p>
<p>В моей статье можно почитать о <a href="http://www.xela.ru/2009/08/robotstxt-dlya-wordpress/" >robots.txt для wordpress</a>.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=513&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/07/o-fajle-robotstxt/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Игрушка башни- Flash Element TD</title>
		<link>http://www.xela.ru/2009/07/igrushka-bashni-flash-element-td/</link>
		<comments>http://www.xela.ru/2009/07/igrushka-bashni-flash-element-td/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 14:51:22 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[башни]]></category>
		<category><![CDATA[игры]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=485</guid>
		<description><![CDATA[Цель игры Flash element: по лабиринту ходят всякие чудики, которых нужно отстреливать при помощи башен. Вид и место расположения которых выбирает игрок. Башни можно улучшать, периодически возникает возможность купить новый вид башен. Переменных в игре много и приходится думать, чтобы выстроить хорошую оборону. Короче говоря стоит попробовать. Немного помощи: при нажатии на пробел появляется полоска [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-496" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="igrushka-bashni-flash-element-td-pic1" src="http://www.xela.ru/wp-content/uploads/2009/07/igrushka-bashni-flash-element-td-pic1.jpg" alt="igrushka-bashni-flash-element-td-pic1" width="150" height="150" />Цель игры Flash element: по лабиринту ходят всякие чудики, которых нужно отстреливать при помощи башен. Вид и место расположения которых выбирает игрок. Башни можно улучшать, периодически возникает возможность купить новый вид башен. Переменных в игре много и приходится думать, чтобы выстроить хорошую оборону. Короче говоря стоит попробовать. Немного помощи: при нажатии на пробел появляется полоска жизни врагов, после каждого нападение к деньгам прибавляется процент, чем меньше денег тратить, тем больше их получается в конце.<br />
<span id="more-485"></span> <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="530" height="370" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="bgcolor" value="#333333" /><param name="src" value="http://www.xela.ru/wp-content/uploads/flashgame/FlashElementTD.swf" /><param name="quality" value="high" /><embed type="application/x-shockwave-flash" width="530" height="370" src="http://www.xela.ru/wp-content/uploads/flashgame/FlashElementTD.swf" quality="high" bgcolor="#333333"></embed></object></p>
<p>Мой рекорд- score:4483, lvl:38.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=485&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/07/igrushka-bashni-flash-element-td/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Активная кнопка через CSS и без javascript.</title>
		<link>http://www.xela.ru/2009/07/aktivnaya-knopka-cherez-css-i-bez-javascript/</link>
		<comments>http://www.xela.ru/2009/07/aktivnaya-knopka-cherez-css-i-bez-javascript/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 08:34:18 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[активная кнопка]]></category>
		<category><![CDATA[кнопка css]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=386</guid>
		<description><![CDATA[Встала задача, сделать активную кнопку с надписью. Вариант с javascript довольно громоздкий, и неинтересный, кроме того он меняет картинку, и нужно делать для сходных кнопок с разным текстом по 2 картинки на каждую. Сделаем через CSS, тут достаточно всего 2-х картинок, а текст на кнопке можно написать какой угодно.
В файле css пишем следующее:
.go {float:left;
padding:2px 0px [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_397" class="wp-caption alignleft" style="width: 150px"><img class="size-full wp-image-397" title="aktivnaya-knopka-cherez-css-i-bez-javascript-pic1" src="http://www.xela.ru/wp-content/uploads/2009/07/aktivnaya-knopka-cherez-css-i-bez-javascript-pic1.jpg" alt="Код проходит валидацию." width="140" height="44" /><p class="wp-caption-text">Код из статьи проходит валидацию.</p></div>
<p>Встала задача, сделать активную кнопку с надписью. Вариант с javascript довольно громоздкий, и неинтересный, кроме того он меняет картинку, и нужно делать для сходных кнопок с разным текстом по 2 картинки на каждую. Сделаем через CSS, тут достаточно всего 2-х картинок, а текст на кнопке можно написать какой угодно.</p>
<p><span id="more-386"></span>В файле css пишем следующее:</p>
<blockquote><p>.go {float:left;<br />
padding:2px 0px 0px 11px;<br />
height:25px; width:90px; font-family:Georgia, tahoma;<br />
font-size:17px;<br />
color:#FFFFFF;<br />
text-decoration:none;<br />
background-image: url(images/click_here.gif);}<br />
.go:hover {background-image: url(images/click_here_over.gif);}</p></blockquote>
<p>В первой строке (.go) описываем параметры надписи на кнопке и подкладываем картинку фона кнопки. Во второй (.go:hover) меняем картинку кнопки на ту, которая будет при наведении мышки.</p>
<p>В html добавляем простую ссылку с классом и надписью на кнопке:</p>
<blockquote><p>&lt;a class=go href=&#8221;#&#8221;&gt;перейти&lt;/a&gt;</p></blockquote>
<p>Собственно и все. <noindex><a rel="nofollow" href="http://xela.ru/wp-content/uploads/button/button.html"  target="_blank">Пример</a></noindex>.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=386&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/07/aktivnaya-knopka-cherez-css-i-bez-javascript/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Firefox как замена IE.</title>
		<link>http://www.xela.ru/2009/05/firefox-kak-zamena-ie/</link>
		<comments>http://www.xela.ru/2009/05/firefox-kak-zamena-ie/#comments</comments>
		<pubDate>Tue, 12 May 2009 10:27:12 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[NoSquint]]></category>
		<category><![CDATA[браузер]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=61</guid>
		<description><![CDATA[В качестве альтернативы Internet Explorer рассматривались Google Chrome и Firefox. Основным требованием было качественное масшабирование страниц, чтобы не &#8220;ломать&#8221; глаза при большом разрешении. Причем хотелось чтобы увеличивался не только текст, но и элементы страницы, уж очень понравилась реализация в IE.
Изделие от Google отпало почти сразу именно ввиду невнятного масштабирования страницы, изменялся только размер текста, страницы [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-169" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="firefox-kak-zamena-ie-pic3" src="http://www.xela.ru/wp-content/uploads/2009/05/firefox-kak-zamena-ie-pic3.jpg" alt="firefox-kak-zamena-ie-pic3" width="150" height="150" />В качестве альтернативы Internet Explorer рассматривались Google Chrome и Firefox. Основным требованием было качественное масшабирование страниц, чтобы не &#8220;ломать&#8221; глаза при большом разрешении. Причем хотелось чтобы увеличивался не только текст, но и элементы страницы, уж очень понравилась реализация в IE.<span id="more-61"></span></p>
<p>Изделие от Google отпало почти сразу именно ввиду невнятного масштабирования страницы, изменялся только размер текста, страницы разъезжались, кроме того нужно было постоянно подгонять масштаб т.к. при загрузке значение не всегда сохраняется. Промежуточное решение установить больший размер шрифта в настройках тоже срабатывало далеко не всегда.</p>
<p>В Firefox тоже есть некоторые трудности с настройкой масштабом, но они могут быть быстро решены путем установки плагина &#8220;NoSquint&#8221;. Он позволяет задавать масштаб (увеличивая и текст и графику, либо только текст) для конкретной страницы или просто по умолчанию для всех страниц. Настройки плагина очень просты и понятны.</p>
<p><img class="alignnone size-full wp-image-66" title="firefox-kak-zamena-ie-pic11" src="http://www.xela.ru/wp-content/uploads/2009/05/firefox-kak-zamena-ie-pic11.jpg" alt="firefox-kak-zamena-ie-pic11" width="400" height="313" /></p>
<p>Кроме этого можно включить отображение масштаба внизу страницы как в IE, и при необходимости быстро сбросить увеличение чтобы увидеть страницу в исходном размере, что может быть удобно при разработке сайтов.</p>
<p><img class="alignnone size-full wp-image-67" title="firefox-kak-zamena-ie-pic21" src="http://www.xela.ru/wp-content/uploads/2009/05/firefox-kak-zamena-ie-pic21.jpg" alt="firefox-kak-zamena-ie-pic21" width="400" height="252" /></p>
<p>После установки этого плагина в Firefox появляется полноценная замена механизму масштабирования, который реализован в IE, а все минусы последнего исчезают.</p>
<p>Кстати несколько полезных клавиатурных сокращений для браузера:<br />
<strong>ctrl+T</strong> &#8211; новая вкладка<br />
<strong>ctrl+Tab</strong> &#8211; перейти к следующей вкладке<br />
<strong>ctrl+shft+Tab</strong> &#8211; перейти к предыдующей вкладке<br />
<strong>ctrl+W</strong> &#8211; закрыть вкладку<br />
Полный список клавиатурных сокращений можно посмотреть <noindex><a rel="nofollow" href="http://support.mozilla.com/ru/kb/%D0%A1%D0%BE%D1%87%D0%B5%D1%82%D0%B0%D0%BD%D0%B8%D1%8F+%D0%BA%D0%BB%D0%B0%D0%B2%D0%B8%D1%88?style_mode=inproduct" rel="nofollow"  target="_blank">тут</a></noindex>.</p>
<p>Полезные ссылки:<br />
<noindex><a rel="nofollow" href="http://www.mozilla.ru/" rel="nofollow"  target="_blank">Официальный  Mozilla в России</a></noindex>.<br />
<noindex><a rel="nofollow" href="http://fx.yandex.ru/" rel="nofollow"  target="_blank">Firefox с Яндекс.Баром</a></noindex>.<br />
<noindex><a rel="nofollow" href="http://urandom.ca/nosquint/" rel="nofollow"  target="_blank">Сайт плагина NoSquint</a></noindex>.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=61&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/05/firefox-kak-zamena-ie/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Настройка httpd.conf на VPS под Unix Apache.</title>
		<link>http://www.xela.ru/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache/</link>
		<comments>http://www.xela.ru/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 13:56:37 +0000</pubDate>
		<dc:creator>xela</dc:creator>
				<category><![CDATA[Интернет штучки]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[httpd]]></category>
		<category><![CDATA[vds]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://www.xela.ru/?p=3</guid>
		<description><![CDATA[Обычно после покупки VPS наступает период эйфории &#8211; много ресурсов, много возможностей, по сравнению с виртуальным хостингом все работает быстро и хорошо. Но через некоторое время, по мере роста сайта, возникают проблемы. Чаще всего они выражены в нехватке оперативной памяти, либо в низкой скорости отклика сайта на действия пользователей. Не стоит сразу переходить на более высокий [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-1277" style="border: 0pt none; margin-left: 5px; margin-right: 5px;" title="nastrojka-httpdconf-na-vps-pod-unix-apache-pic1" src="http://www.xela.ru/wp-content/uploads/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache-pic1.jpg" alt="nastrojka-httpdconf-na-vps-pod-unix-apache-pic1" width="150" height="150" />Обычно после покупки VPS наступает период эйфории &#8211; много ресурсов, много возможностей, по сравнению с виртуальным хостингом все работает быстро и хорошо. Но через некоторое время, по мере роста сайта, возникают проблемы. Чаще всего они выражены в нехватке оперативной памяти, либо в низкой скорости отклика сайта на действия пользователей. Не стоит сразу переходить на более высокий тариф, можно попробовать настроить Apache под свои нужды.</p>
<p>Для настройки нам понадобится файл <strong>httpd.conf</strong>, который расположен тут &#8211; <strong>etc/httpd/conf/.<br />
<span id="more-3"></span></strong></p>
<p>Открываем &#8211; смотрим &#8211; видим:</p>
<blockquote><p># KeepAlive: Whether or not to allow persistent connections (more than<br />
# one request per connection). Set to &#8220;Off&#8221; to deactivate.<br />
#<br />
KeepAlive off</p>
<p>#<br />
# MaxKeepAliveRequests: The maximum number of requests to allow<br />
# during a persistent connection. Set to 0 to allow an unlimited amount.<br />
# We recommend you leave this number high, for maximum performance.<br />
#<br />
MaxKeepAliveRequests 100</p>
<p>#<br />
# KeepAliveTimeout: Number of seconds to wait for the next request from the<br />
# same client on the same connection.<br />
#<br />
KeepAliveTimeout 15</p>
<p>##<br />
## Server-Pool Size Regulation (MPM specific)<br />
##</p>
<p># prefork MPM<br />
# StartServers: number of server processes to start<br />
# MinSpareServers: minimum number of server processes which are kept spare<br />
# MaxSpareServers: maximum number of server processes which are kept spare<br />
# ServerLimit: maximum value for MaxClients for the lifetime of the server<br />
# MaxClients: maximum number of server processes allowed to start<br />
# MaxRequestsPerChild: maximum number of requests a server process serves<br />
&lt;IfModule prefork.c&gt;<br />
StartServers       1<br />
MinSpareServers    1<br />
MaxSpareServers    5<br />
ServerLimit       10<br />
MaxClients        10<br />
MaxRequestsPerChild  4000<br />
&lt;/IfModule&gt;</p></blockquote>
<p>Разберем по-порядку настройки.</p>
<p><strong>KeepAlive</strong> &#8211; держит TCP-подключении открытым и позволяет делать несколько запросов от одного и того же клиента. Если стоит off, то для каждой страницы и картинки на ней будет создаваться свое подключение, что является явно лишней нагрузкой для сервера. Для динамических страниц на мой взгляд просто необходимо его включить.</p>
<p><strong>MaxKeepAliveRequests</strong> &#8211; количество запросов в 1 соединении.</p>
<p><strong>KeepAliveTimeout</strong> &#8211; Время жизни (в секундах) соединения. При больших значениях сервер не закрывает процесс слишком долго и он висит бесполезно занимая часть ресурсов.</p>
<p>Мы подошли к настройке <strong>MPM</strong> (модуль многопоточной обработки). В apache любой запрос обрабатывается в процессе или потоке. За многопоточность как раз и отвечает MPM. При установке сервера можно выбрать один из нескольких модулей. Почему <strong>prefork MPM</strong>, а не <strong>worker MPM</strong>? По умолчанию для unix используется именно prefork, но на всякий случай можно выполнить через SSH &#8211; подключение команду &#8216;<strong>httpd -V</strong>&#8216;. В моем случае ответ &#8211; Server MPM: prefork. Работает prefork следующим образом &#8211; модуль создает несколько дочерних процессов, при этом в каждом процессе только один поток. В отличае от worker, который обрабатывает несколько потоков на процесс, prefork потребляет больше ресурсов, но более стабилен. В основном этим и обусловлен выбор, хотя многие считают, что worker работает быстрее.</p>
<p>Переходим непосредственно к настройке.</p>
<p><strong>StartServers</strong> &#8211; устанавливает количество дочерних прицессов, которые создаются при <strong>запуске сервера. </strong>Параметр динамический и изменяется в процессе работы, поэтому можно его не менять.</p>
<p><strong>MinSpareServers  -</strong> задает <strong>минимальное </strong>число <strong>неиспользуемых</strong> дочерних процессов, которые ожидают в готовности принят запрос. Создание нового процесса достаточно затратная операция и при большом количестве запросов на сервер будет ложится лишняя нагрузка.</p>
<p><strong>MaxSpareServers</strong> &#8211; задает <strong>максимально </strong>число <strong>неиспользуемых</strong> дочерних процессов, которые ожидают в готовности принят запрос. Опять же, если создано много дополнительных процессов, то система будет нагружаться сильно даже при минимальном количестве клиентов.</p>
<p>Стоит еще раз заострить внимание на том, что неправильная настройка параметров MinSpareServers и MaxSpareServers может привести к перерасходу ресурсов, либо к замедлению работы всей системы.</p>
<p><strong>ServerLimit</strong> &#8211; эта директива устанавливает максимальное значение MaxClients. Рекомендуется устанавливать это значение равным значению в директиве Maxclients.</p>
<p><strong>MaxClients</strong> - следует обратить внимание, что это самый важный параметр настройки Prefork MPM. Директива устанавливает максимальное количество параллельных процессов, создаваемых для обработки запросов. Чем больше значение, тем больше одновременно может быть обработано запросов и тем больше будет израсходовано памяти. При использовании динамических страниц с PHP на процесс может быть выделено 16-32МБ. Чтобы определить точнее необходимо через SSH-соединение выполнить команду &#8216;<strong>ps -ylC httpd &#8211;sort:rss</strong>&#8216; (между y и С находится строчная буква <span style="color: #ff0000;">L</span>!, а перед sort <span style="color: #ff0000;">2</span> минуса)<strong>. </strong> На выходе мы получим табличку, где в колонке RSS и будут находится искомые значения занятой памяти, для получения значений в мегабайтах их нужно разделить на 1024. Для получения общей информации о памяти можно выполнить команду &#8216;<strong>free -m</strong>&#8216;. Теперь можно рассчитать примерное значение самого параметра по любой из формул:</p>
<blockquote><p><strong>MaxClients ≈ (RAM &#8211; размер_загруженных_приложений)/(размер_процесса), </strong>либо<strong><br />
</strong><strong>MaxClients ≈RAM* 70% / Max_размер_памяти_под_процесс.</strong></p></blockquote>
<p>Вторая формула чисто эмпирическая, и менее точная, расход памяти приложениями сервера заложен в 30% и, в зависимости от настроек, цифра может меняться в любую сторону. Полученное значение еще не гарантирует правильную работу сервера, следует понаблюдать некоторое время за распределением ресурсов. В случае если параметр установлен ниже оптимального значения, сервер под нагрузкой обслуживает MaxClients запросов, при этом память еще свободна, а следующие запросы уже отправляются в очередь, что приводит к замедлению работы сайта. Если же наоборот значение слишком высоко вся память будет занята, система залезет на диск и это приведет к резкому замедлению работы. Для оценки можно воспользоваться командой &#8216;top -p 30&#8242; вверху можно будет увидеть значения памяти и загрузку процессора.</p>
<p><strong>MaxRequestsPerChild</strong> &#8211; задает количество запросов, которые может обработать дочерний процесс до перезапуска. Значение должно быть достаточно большим, чтобы все время не создавать новые процессы. Но рекомендуется все же его ограничить (0 &#8211; неограниченно), чтобы при длительной работе Apache, в случае &#8220;утечки памяти&#8221;, процесс был принудительно завершен.</p>
<p>В моем случае простое включение KeepAlive с таймаутом в 1сек. дало заметный рост скорости отклика сайта. Более точная настройка MaxClients в сторону увеличения сбалансировала потребление памяти, и несколько ускорила отклик при большом наплыве посетителей.</p>
<img src="http://www.xela.ru/?ak_action=api_record_view&id=3&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.xela.ru/2009/03/nastrojka-httpdconf-na-vps-pod-unix-apache/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
	</channel>
</rss>
