<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
   <channel>
      <title>LastoBlog</title>
      <link>http://lasto.com/blog/</link>
      <description>Lasto Blogging Engine</description>
      <language>ru</language>
      <copyright>Lasto</copyright>
      <managingEditor>master.lasto@gmail.com</managingEditor>
      <webMaster>master.lasto@gmail.com</webMaster>
      <image>
         <title>LastoBlog</title>
         <url>http://lasto.com/blog/i/lastoblog.png</url>
         <link>http://lasto.com/blog/</link>
      </image>

      <item>
         <title>Любителям тонких извращений. nginx под Виндой.</title>
         <link>http://lasto.com/blog/post_1321456200.html</link>
         <description>&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="float:right;margin-right:25px;"&gt;

   &lt;br&gt;Демону сложно

   &lt;br&gt;Уцелеть в нашем мире.

   &lt;br&gt;Помочь ему надо...

&lt;/div&gt;

&lt;div style="clear:both;"&gt;&lt;br&gt;&lt;/div&gt;



   &lt;DIV class="postimg"&gt;

      &lt;img src="http://lasto.com/blog/i/p/1321456200.gif" width="200" height="150" alt="Ценителям тонких извращений. nginx под Виндой."&gt;

   &lt;/DIV&gt;



  &lt;p&gt;Как и всякий потомственный извращенец, свято верящий в непреложные истины типа "лучше день потерять, потом за пять минут долететь" &amp;copy; из мультика про "крылья, ноги, хвосты", местный автор в своей повседневной деятельности придерживается вытекающего отсюда принципа: автоматизируй всё, что можно, и пусть оно дальше само упирается рогом.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Но поскольку природная лень и почитание Бритвы Оккама не сподвигли местного автора на изучение какого-либо языка программирования под Винду, вся автоматизация обычно городится на базе не очень-то подходящего для таких вещей Пых-Пыха. Язык, конечно, воистину скриптовый и ортодоксально мощный, но чуток для других задач всё-таки.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Как водится, преодоление собственноручно созданных трудностей обычно порождает бесценный опыт. Изливание которого на неподготовленного читателя даст пищу для ума другим потомственным извращенцам. Каковые, столкнувшись с чем-то подобным, вспомнят потом про этот топик, вернутся сюда, воздадут ему должное, и порешают свой обидный трабл за двадцать минут времени.&lt;/p&gt;&lt;br&gt;

  



  &lt;p&gt;&lt;b&gt;Засада на демона.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Представим, что нам потребовался круглосуточно работающий бот. Который присосался к Интернету, и тащит с него периодически какие-то постоянно меняющиеся данные через банальный XML. Анализирует их, принимает решения о своих действиях, и управляет через API чем-то где-то очень далеко.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;В данный момент нам не интересно, что это такое конкретно. Хоть бот для биржи, хоть контролька для красной кнопки ядерного чемоданчика Первого Лица. Важно лишь, чтобы эта штука не впадала в спячку, не висла, не отваливалась, не самоубивалась любым другим способом ни при каких обстоятельствах.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Ибо гейша, потерявшая самообладание - это ужасно. Что уж говорить о красной кнопке...&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Программеры уже поняли, что мы имеем дело с так называемым демоном. Задача выживания которого давно и успешно решена человечеством четыре раза подряд четырьмя же разными способами. Под крики "Бинго" и запах пива.&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Вместе с тем понятно, что потомственные извращенцы, создающие демонов путём выкуривания могучего косяка Пых-Пыха, сами же обрекают себя на изобретение велосипеда. Всё дальнейшее- только для велосипедистов.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Конечно, все вопросы самозапуска демона и его возрождения, ежели что, тоже решаются. Как и любой другой форс-мажор. Засада совсем в другом.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Так как Пых-Пых не относится к транслируемым языкам, ему нужна окружающая среда. В виде веб-сервера, всяких там библиотек, PHP-шной сборочки под операционку, и прочих мелочей. И в Раше это делается так, прям-таки ничтоже сумняшеся:&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Где-нибудь в обиталище потомственного извращенца ищется клочок свободной поверхности. Формата, близкого к А4. Нехай это будет верхняя грань вон той колонки "Вега-50АС-106". Которая пела и плясала последний раз году этак в двухтысячном, а сейчас хрен её знает, зачем тут стоит. Видимо, просто выкинуть жалко, а подарить некому.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Сверху ставится ноут, достатый из пыльных глубин бездонной тумбочки. Раньше ноуты делать умели, а потому живут они вечно. Ни хрена им не делается. Хотя толку с того чуть - всё равно такие вещи уже давно не апгрейдятся, а железо там откровенно слабое.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;В ноут вливается Денвер, в нём поднимается домен, в домен кладётся скрипт, и всё это запускается в виде демона. Что исправно работает, если бы не одна беда.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Индеец, нещадно жрущий память.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Хотя операционка плюс весь подключенный софт в памяти занимают около 250 мегов (на XP), а самой оперативки по моде 1999 года там традиционных полгига, странным образом кончается она весьма скоро. Начинаются свопинг, тормоза, подвисон, и всё это вполне способно завершиться позорным крахом и нечаянным пуком. Денвер прощается с жизнью и рисует напоследок на экране страшно матерный эррор.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Любые попытки как-то облегчить ему жизнь ничего не дают. Да, можно переписать всего демона заново, совершенно точно не допуская ляпов, могущих привести к утечки памяти через банальное не освобождение переменной. Да, можно поотключать излишества в виде насильно приляпанных разработчиком почтового демона и MySQL (так ли уж они всем нужны?), и сделать множество других напрашивающихся телодвижений.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Бестолку.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Память утекает именно через Апач, причём полноводной рекой. Периодически его перезапускать - не выход. Наращивать оперативку - тоже, ибо один фиг кончится всё равно, сколько бы её там ни было, только чуть позже.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Давайте так же не станем ругаться на самого Апача. Он монструозен, может быть, не сильно грамотно в Денвера портирован, не все дырки в нём заткнуты заглушками подходящего диаметра. Зверушка интересная, но не подходит она для наших демонических дел ну никак. Для пробного отладочного сервера может быть использован, но не более того.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Так что хороним весь этот Денвер. Без почестей, ибо расстроил.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Другой Чингачгук.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;После ряда тестов и прочих проявлений любознательности, была найдена достойная замена Денверу. Для жизни под этой штукой демонического бота штуковина оказалась незаменимой. Зовут её nginx, и сейчас мы станем толковать, как втетенивать её под Винду и вешать на неё всякие там PHP и прочие Zend-ы.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Потому что на &lt;a href="http://nginx.org/ru/" target="_blank"&gt;оффсайте тулзы&lt;/a&gt; Вам ничем не помогут.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Установка базового дистрибутива собственно сервера.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Сначала в соответствующем разделе &lt;a href="http://nginx.org/ru/download.html" target="_blank"&gt;скачиваем&lt;/a&gt; ту версию, что значится стабильной. На момент написания данного топика это была &lt;b&gt;nginx/Windows-1.0.10&lt;/b&gt; Весит меньше мега, вынимается из архива, и сохраняется папкой под именем &lt;b&gt;nginx&lt;/b&gt; в корне диска С.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Во избежание недоразумений давайте договоримся, что корневой папкой Чингачгука будет именно &lt;b&gt;C:\nginx\&lt;/b&gt; Расположенная на указанном диске и в папке с таким вот именем. А далее все папки и файлы станем перечислять только с указанием полного пути от корня диска. Чтоб даже самый невнимательный читатель понимал сущности правильно. Потому что никто ему ничего индивидуально объяснять на пальцах решительно не будет.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Внутри папки Вы найдёте одинокий экзешник, и несколько папочек с очень подозрительными файлами, изучать содержимое которых Вы точно не станете.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Собственно, и делать с этим nginx-ом тоже особо нечего. Ну можно запустить его из-под консоли, увидеть через браузер на локалхосте HTML документ, лежащий в папке "html", убить сервер опять же из-под консоли. Кому это интересно?&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Поэтому поразвлекавшись с консолькой, как это &lt;a href="http://nginx.org/ru/docs/windows.html" target="_blank"&gt;рекомендуется&lt;/a&gt;, давайте вспомним про нашего несчастного демона. А демон страдает по Пых-Пыху...&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Установка PHP.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;В данном месте автор поступил парадоксально, и ни разу не так, как предписано. Вместо того, чтобы идти на какой-то из сайтов сообщества PHP, и тащить оттуда одну из сборок, актуальных на данный момент, местный автор занялся разграблением могил.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Похороненный давеча Денвер был откопан обратно, из его директории &lt;b&gt;\usr\local\&lt;/b&gt; была уворована папка &lt;b&gt;php5&lt;/b&gt;, которая попала в корень nginx, и под немного другим именем, став &lt;b&gt;C:\nginx\php\&lt;/b&gt;&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Если Вы спросите, зачем так, отвечу.&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Поскольку PHP при запуске его как CGI, ни на копейку не отличается от PHP, запущенного модулем Апача, то вполне сгодится и то, что ранее было собрано по кусочкам (сам PHP-5.2.x, необходимые модули расширения к нему, плюс Зенды там всякие) для Денвера. Проходить тот же квест по новой совершенно ни к чему.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Только есть один момент.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;nginx устроен значительно проще, и не разумеет всяких там вложенных директорий в папке &lt;b&gt;C:\nginx\php\&lt;/b&gt; Поэтому делаете две вещи.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;В файле &lt;b&gt;C:\nginx\php\php.ini&lt;/b&gt; любуетесь на секцию "Windows Extensions", и все не задокументированные там модули (которые, видимо, нужны для работы совершенно точно либо предположительно) перетаскиваете из папки &lt;b&gt;C:\nginx\php\ext\&lt;/b&gt; прямо в &lt;b&gt;C:\nginx\php\&lt;/b&gt; А саму папку &lt;b&gt;C:\nginx\php\ext\&lt;/b&gt; убиваете. Как и две другие - &lt;b&gt;C:\nginx\php\extras\&lt;/b&gt; и &lt;b&gt;C:\nginx\php\PEAR\&lt;/b&gt;&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;И вторая вещь. Делается при наличии Зенда.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Зенд на РНР в Денвере цепляется обычно в виде файла &lt;b&gt;C:\nginx\php\ZendExtensionManager.dll&lt;/b&gt;, который требует наличия другого, по пути &lt;b&gt;C:\nginx\php\php-5.2.x\ZendOptimizer.dll&lt;/b&gt; Естественно, при ограблении мёртвого Апача Вы это всё перетащите к новому владельцу.  Но только надо, чтоб он смог вступить в права владения.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;С этой целью переправьте в конце &lt;b&gt;C:\nginx\php.ini&lt;/b&gt; файла пути на правильные:&lt;/p&gt;

  

  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Чистка PHP:&lt;/b&gt;&lt;/p&gt;&lt;br&gt;  





  &lt;p&gt;Папку &lt;b&gt;C:\nginx\php\&lt;/b&gt; при наличии желания можно почистить от всего ненужного. Ненужного там много (почти всё, особо то, у чего в именах есть явное упоминание Апача), но, если не распознаёте файлы на свой-чужой, воздержитесь.&lt;/p&gt;&lt;br&gt;  

  

  &lt;p&gt;Минимальный набор PHP запчастей, который необходим и достаточен:&lt;/p&gt;&lt;br&gt;

   

  &lt;center&gt;

     &lt;img src="http://lasto.com/blog/i/p/1321456200.png" width="320" height="334" alt="Минимальный состав PHP."&gt;&lt;br&gt;&lt;br&gt;

  &lt;/center&gt;

  

  &lt;p&gt;Красным обведено то, что требуется конкретному скрипту дополнительно, подцеплено через php.ini, как сказано выше, и перетащено сюда из мест, опять-таки оговоренных ранее.&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Если Вам такие модули не нужны, и Вы их не присоединяете через php.ini, то отсюда тоже можно вычеркнуть. Останется всего ничего.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Конфигурирование nginx:&lt;/b&gt;&lt;/p&gt;&lt;br&gt; 



  

  &lt;p&gt;Также, на мой взгляд, стоит познакомить nginx с PHP расширением - внесите в файл &lt;b&gt;C:\nginx\conf\mime.types&lt;/b&gt; по аналогии с уже имеющимся там новую запись:&lt;/p&gt;

  

  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;И, раз оказались в этой директории, в файле &lt;b&gt;C:\nginx\conf\nginx.conf&lt;/b&gt; замените вот этот кусок:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;на не менее страшный, но более полезный:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;В третьей строчке второго куска Вам встретится домен &lt;b&gt;my.bot&lt;/b&gt; - это произвольное имя домена. Домен может быть каким угодно, в данном случае демон живёт вот в таком. В Вашем случае будет что-то иное - это иное доменом и пишите.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;В этом же файле обратите внимание на запись в секции http:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;Чтобы не копить в процессе работы гигабайты логов акцесса, которые Вы ни смотреть, ни анализировать точно не будете, модифицируйте этот кусок кода вот так:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;

    access_log off;&lt;/pre&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Человеческий домен в адресе браузера.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Любому сайту нравится, когда в процессе его разработки и отладки с ним обращаются не как с недоделком, а по-взрослому. То есть сайт живёт в том же домене, что и на реальном хосте.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Местному автору непонятно, как может быть иначе. Хоть он и потомственный извращенец, но никаких буковок про localhost и циферок про 127.0.0.1 в адресе браузера категорически не приемлет.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Поэтому давайте затратим пару минут, создадим папку &lt;b&gt;C:\nginx\host\&lt;/b&gt; с двумя файлами внутри. Их можно сделать Блокнотом Винды в кодировке ANSI.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Файл первый, &lt;b&gt;C:\nginx\host\hosts.default&lt;/b&gt; Содержит такой код:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;Второй файл, &lt;b&gt;C:\nginx\host\hosts.work&lt;/b&gt; чуть сложнее:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;Тут опять-таки понимайте, что вместо имени домена my.bot надо писать то же самое, что Вы подставляли в файл &lt;b&gt;C:\nginx\conf\nginx.conf&lt;/b&gt; &lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Теперь, когда у нас есть два варианта файла хоста, мы будем их попеременно подсовывать операционной системе при старте Чингачгука и при его отбое.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Педали газа и тормоза.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Чтоб не общаться с консолью, столь милой сердцу линуксятника, но обычно ненавистной виндузятнику, имеет большой смысл создать парочку командных файлов, первый из которых запускает сервер со всеми его потрохами, а второй стопорит яростным домкратом. Что делается с трудом, так как даже базовые сведения про DOS давно и успешно забыты. Но попытаемся.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Стартовый файл &lt;b&gt;C:\nginx\start.bat&lt;/b&gt; пусть содержит в себе такие команды:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;Обратите внимание, где расположена системная папка. У Вас она может быть на другом диске, называться не так, и иметь внутри себя иной путь до файла хоста, так как операционка не обязательно XP.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Командный файл остановки &lt;b&gt;C:\nginx\stop.bat&lt;/b&gt; обратен по смыслу:&lt;/p&gt;



  &lt;pre lang="php"&gt;&lt;font color="red"&gt;Извинения, код можно увидеть только на сайте&lt;/font&gt;&lt;/pre&gt;&lt;br&gt;



  &lt;p&gt;Все те же соображения про путь до файла хоста операционки опять же в силе.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Приступим, помолясь.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Разместив в папке &lt;b&gt;C:\nginx\html\&lt;/b&gt; индексный php файл с echo-оператором про сакраментальное Hello World, и кликнув в стартовый командный файл, мы увидим мельтешение трёх DOS-овских окошек, два из который тут же рассосутся, а одно останется в фоне. Это запущен PHP в режиме Fast CGI. Окошко убивать не надо.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;На всякий случай глянув в диспетчер задач, Вы там должны увидеть два процесса nginx.exe, весом по три мега, и один php-cgi.exe, потяжелее. В авторском варианте этот процесс потянул на 11 мегов, так как демону оказалось нужно много тяжёлых модулей.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Если открыть браузер, то в домене my.bot можно увидеть ритуальный вопль про Hello World, рождённый PHP. Значит, всё работает, и в папку &lt;b&gt;C:\nginx\html\&lt;/b&gt; можно заселять демона (или сайт). При этом &lt;b&gt;C:\nginx\html\50x.html&lt;/b&gt; рекомендуется оставить в покое - он прописан  настройками в качестве страницы ошибок.&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Впечатления.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;Хотя по мегабайтам оперативки, казалось бы, исходно никакого заметного выигрыша нет (Апач не очень жирен), по истечении суток работы демона на nginx, оба процесса nginx.exe сдулись в памяти с изначальных более чем трёх мегов до 800 и 52 кило. Процесс php-cgi.exe похудел с 11 мегов до шести. Такое ощущение, что от них отвалилось то, что демоном не используется. Что само по себе странно, навевает мысль об искусственном интеллекте, а потому пугает.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;При запуске того же самого демона под Денвером вся память обычно пожирается менее чем через 10-12 часов. Денвер придётся перегружать два-три раза в сутки. Причём не факт, что этого достаточно. При интенсивной деятельности демона иногда случается даже крах Апача.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Конечно, по удобству работы nginx-у далеко до того же Денвера. К примеру, .htaccess тут не поддерживается в принципе, модреврайтовые инструкции эмулируются через вывих мозга, а кучка доменов цепляется через хитрости. Потомственный извращенец всё это осилит, но...&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Но для бота, работающего круглосуточно, самое оно.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Ну и конечно, необходимо воздать хвалу &lt;a href="http://sysoev.ru/" target="_blank"&gt;Игорю Сысоыву&lt;/a&gt;. 

  &lt;br&gt;Судя по лаконичности хомепаги, ему близки самурайские идеалы :)&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;&lt;b&gt;Пара слов о браузере.&lt;/b&gt;&lt;/p&gt;&lt;br&gt;





  &lt;p&gt;При построении демона на PHP удобно управлять им через веб-интерфейс, что подразумевает использование браузера. Не в консольке же команды писать.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Но.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Современные программерские конторы пишут сильно сложный софт, ввиду чего по головотяпству (это следствие командной работы) вычислительные ресурсы иногда просто разбазариваются. Например, многие браузеры грешны тем, что и жрут оперативку без всякой меры, да ещё и позволяют этой самой оперативке "утекать". Что нам совсем не надо - оперативки у нас не три вагона.&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Поэтому в данном случае очень уместна крохотная оболочка, бегающая на движке ИЕ. Несмотря на всеобщую и совершенно справедливую нелюбовь (а то и ненависть) народа и web-дизайнеров к ИЕ, сам движок от ИЕ идеален. Он часть операционки, быстр и лёгок, и категорически не позволяет себе жрать память ни при каких обстоятельствах. Ни один альтернативный браузер по данным параметрам и близко не стоит.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;В качестве оболочки для фиксации результатов деятельности демона рекомендуется  

  &lt;a href="http://www.fastestwebbrowser.com/" target="_blank"&gt;Fastest Web Browser&lt;/a&gt;. Настроек у него вообще нет :)&lt;/p&gt;&lt;br&gt;

  

  &lt;p&gt;Если же это обстоятельство коробит, то можно взять

   &lt;a href="http://www.qtweb.net/download.php" target="_blank"&gt;QtWeb&lt;/a&gt;

   &lt;br&gt;Причём лучше всего в виде простого zip-архива.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Утечки памяти через эти два браузера не зафиксированы (привет всяким Мозилам).

  &lt;br&gt;Общий расход оперативки 220 мегов на Винду и весь запущенный зоопарк.

  &lt;br&gt;Показометр стоит как приклеенный сутками.&lt;/p&gt;&lt;br&gt;



  &lt;p&gt;Аллилуйя.&lt;/p&gt;&lt;br&gt;&lt;br&gt;
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://lasto.com/blog/post_1321456200.html"&gt;Оставить комментарий&lt;/a&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://lasto.com/blog/post_1321456200.html"&gt;All Comments&lt;/a&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Thu, 17 Nov 2011 02:37:11 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;Можно проще&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;Если PHP скрипт должен просто как в кроне крутиться, то есть вариант попроще. Через планировщик винды можно стартовать тупо &lt;br&gt; &lt;br&gt; c:/php/php-cgi.exe "путь к скрипту" &lt;br&gt; &lt;br&gt; и вся недолга. С контрольным прибиванием после таймаута ну и под другим юзером дабы даже не всплывать. Не? &lt;br&gt; &lt;br&gt; &lt;font color=green&gt;Можно. &lt;br&gt; &lt;br&gt; Но если демон написан как сайт, по принципу информационно-командной системы, с обновляемыми данными на морде, и всякими кнопками, то без браузера ему никак. &lt;br&gt; &lt;br&gt; Хотя, конечно, можно отделить одно от другого.&lt;/font&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_616bD6dA6cAL40C6d61E6c2e636f6d.html"&gt;Александр Хмелев&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Thu, 17 Nov 2011 02:52:58 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;А может по-другому?&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;Может установить Linux и поднять сервер на отдельно взятом ноуте? &lt;br&gt; Сам подумываю уже над реализацией, благо провайдеры дают выделенный IP. &lt;br&gt; &lt;br&gt; Конечно, там заморочек может и поболее будет, но тогда и сайты можно заселять... Как думаете, Вадим Николаевич? &lt;br&gt; &lt;br&gt; Ежели сподобитесь внятную инструкцию написать, буду зело благодарен! &lt;br&gt; &lt;br&gt; &lt;font color=green&gt;Из соображений надёжности и бесперебойности это хуже хостинга. Люди такое делали, и всею толпой дружно увидели, что аптайм страдает. &lt;br&gt; &lt;br&gt; Да и сами посчитайте - если, к примеру, кучка сайтов даёт в Хитрой Конторе 50 уёв в сутки, и раз в месяц Ваш сервак отвалился на день из-за того, что где-то на чердаке голубь насрал на гнездо свитча провайдера, то Ваши потери и составляют те самые 50 уёв. &lt;br&gt; &lt;br&gt; При цене-то вопроса 3 уя в месяц у нормального и надёжного хостера. &lt;br&gt; &lt;br&gt; И такие дауны будут постоянно, по разным причинам. &lt;br&gt; &lt;br&gt; Из заморочек - только то, что Ваш сервак постоянно хакать будут. Пока не приобретёте бесценный опыт :) &lt;br&gt; &lt;br&gt; Так что мне идея держать дома сайты кажется сомнительной. &lt;br&gt; Но могут быть и другие мнения.&lt;/font&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_EC6fH2dI6dI406d61E6c2eHK.html"&gt;airsound&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Thu, 17 Nov 2011 04:35:18 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;nginx&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;Спасибо за статью, хочю сказать что для денвера тоже есть выход но в сторонней тузле - есть прога которая периодически очищает память AnVir Task Manager. &lt;br&gt; &lt;br&gt; Если кто не осилит - она поможет. &lt;br&gt; &lt;br&gt; Плохо что новый денвер так работает - у меня старый ещо проблем вроде нет. &lt;br&gt; &lt;br&gt; Ещо раз спасибо, читаю ридером - поначалу думал хабр :) &lt;br&gt; &lt;br&gt; &lt;font color=green&gt;Есть сомнения, что очищалка памяти тут поможет. &lt;br&gt; Память у живого процесса вроде как не должна отбираться. &lt;br&gt; Ибо процессу кирдык.&lt;/font&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_646a616cE6e40K6bH2e6eAJ.html"&gt;djalin&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Thu, 17 Nov 2011 12:23:31 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;Без темы&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;А почему все-таки не поставить на этот ноут например Ubuntu, которая устанавливается проще винды, тремя кликами next-&gt;next-&gt;finish и по которой куча мануалов в сети ? Те же апач+PHP+MySQL там есть в репозиториях и ставятся одной строчкой в консоли. 512Мб ей хватит с головой. У меня такой сервер, правда с 768 Мб памяти, полностью выполняет функции денвера + торренты качает круглые сутки. &lt;br&gt; &lt;br&gt; &lt;font color=green&gt;Потому что здравый смысл не советует пускаться в тысячекилометровые путешествия на машине, которую в первый раз видишь. &lt;br&gt; &lt;br&gt; И категорически воспрещает женится на той, кого видишь второй раз в жизни. &lt;br&gt; &lt;br&gt; Всё-таки должна быть уверенность в софте, и понимание, как он работает. Красную кнопку чему попало не доверяют. &lt;br&gt; &lt;br&gt; Понятно, что тут возможен холивар. Бога ради. Только давайте будем помнить, что в той же Европе сначала все радостно любили открытое ПО, и массово на него переходили целыми департаментами и министерствами. Сношая всех, кто против. Сейчас переходят обратно, столь же массово, и с не меньшими ништяками. &lt;br&gt; &lt;br&gt; Оно неспроста так.&lt;/font&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_E34383664N40O616e64AN2eHK.html"&gt;Nigthrain&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Thu, 17 Nov 2011 23:31:11 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;Без темы&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;Ой нелехка жисть у вас, виндузятников... Пусть в ойропах куда угодно переходят, а сия конкретная проблема другими осями решается елементарно, даже без всяких серверов. Впрочем, каждому свое. &lt;br&gt; Апач жрет память (в линухе он тоже ее жрет, кстати, если коннектов к нему много становится) возможно потому что на каждый чих рожает дочерний процесс, которого потом почему-то не убивает. И в конце концов сии процессы размножаются как кролики насколько памяти хватает. Если сделавших свое дело прихлопывать насильно -- глядишь, и памяти больше останется. А нгинкс сделан таким, что ему процессов для чихов надо гораздо меньше. Хотя, на истинность особо не претендую. &lt;br&gt; &lt;br&gt; &lt;font color=green&gt;Если точнее, то воркеры в nginx запускаются из раcчёта одна штука на один физический CPU. Исключения бывают, но они экзотические. Так что процессов в домашних применениях всегда по факту две штуки (Master+Slave, видимо, но зачем-то под одинаковым именем). &lt;br&gt; &lt;br&gt; Апач, действительно, плодит много процессов, но в конфигах всегда есть разумное ограничение, плюс зависшие должны убиваться. До фига процессов мы в реальности и не видим, их мало, но они жирные. Что не так, только Аллах знает... &lt;br&gt; &lt;br&gt; Ну да не будем тревожить Аллаха. &lt;br&gt; Вопрос решился, безудержному счастью теперь ничто не мешает. &lt;br&gt; &lt;br&gt; &lt;/font&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_BD6cBE62D40H616d626cAH2eHK.html"&gt;Alex&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="float:right;margin-right:25px;color:#797;"&gt;Fri, 18 Nov 2011 01:53:16 GMT&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;Ибо процессу кирдык.&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:#333;"&gt;Вот именно что не кирдык - проверялось на разных компах - уж незнаю механизм но работает.&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt; 
&lt;div style="margin:10px;color:blue;text-decoration:underline;"&gt;&lt;a href="http://lasto.com/blog/connect_646a616cE6e40K6bH2e6eAJ.html"&gt;djalin&lt;/a&gt;&lt;/div&gt; 
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;br&gt;
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://lasto.com/blog/post_1321456200.html"&gt;Оставить комментарий&lt;/a&gt;&lt;/div&gt; 
&lt;div style="margin-left:10px;color:#575;font-weight:bold;"&gt;&lt;a href="http://lasto.com/blog/post_1321456200.html"&gt;All Comments&lt;/a&gt;&lt;/div&gt;</description>
         <pubDate>Wed, 16 Nov 2011 22:10:00 GMT</pubDate>
      </item>
   </channel>
</rss>
