<?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>compiling.ru &#187; Optimization</title>
	<atom:link href="http://compiling.ru/cat/optimization/feed/" rel="self" type="application/rss+xml" />
	<link>http://compiling.ru</link>
	<description>optimization  highload  security</description>
	<lastBuildDate>Fri, 03 Sep 2010 09:19:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>PHP, FCGID и Apache &#8211; Параметры, связанные с размером</title>
		<link>http://compiling.ru/optimization/php-fcgid-i-apache-parametry-svyazannye-s-razmerom/</link>
		<comments>http://compiling.ru/optimization/php-fcgid-i-apache-parametry-svyazannye-s-razmerom/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 08:33:48 +0000</pubDate>
		<dc:creator>dan1005</dc:creator>
				<category><![CDATA[Optimization]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://compiling.ru/?p=1523</guid>
		<description><![CDATA[Используются следующие переменные PHP: upload_max_filesize - Максимальный размер файла, загружаемого с помощью PHP (используя закачку через HTTP) post_max_size - Устанавливает максимальный разрешенный размер размещаемого файла. Этот параметр также влияет на загрузку файла. Для загрузки больших файлов эта переменная должна быть больше, чем upload_max_filesize. Если вашим сценарием включено ограничение памяти, то memory_limit тоже влияет на закачку [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/send_large_files1.jpg" alt="PHP, FCGID и Apache - Параметры, связанные с размером" width="262" height="202" /></p>
<p>Используются следующие переменные PHP:</p>
<p><strong>upload_max_filesize </strong>- Максимальный размер файла, загружаемого с помощью PHP (используя закачку через HTTP)</p>
<p><strong>post_max_size </strong>- Устанавливает максимальный разрешенный размер размещаемого файла. Этот параметр также влияет на загрузку файла. Для загрузки больших файлов эта переменная должна быть больше, чем upload_max_filesize. Если вашим сценарием включено ограничение памяти, то memory_limit тоже влияет на закачку файлов. Проще говоря, memory_limit должен быть больше, чем <tt><em>post</em></tt><tt><em>_</em></tt><tt><em>max</em></tt><tt><em>_</em></tt><tt><em>size</em></tt>.</p>
<p><strong>memory_limit </strong>- ограничение памяти для отдельного PHP-сценария</p>
<p>Таким образом, чтобы поддерживать закачку файлов до, скажем, 50MB, вы должны задать что-то наподобие:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">post_max_size = 51M</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">upload_max_filesize = 50M</span></p>
<p>Переменную memory_limit оценить сложнее, так как она зависит от того, что сценарий делает с файлом. Например, у roundcube была известна ошибка с объемом памяти, потребляемой вложением, но обычно приложения не так требовательны.</p>
<p>Документация по PHP рекомендует memory_limit больлше, чем post_max_size, так что, как правило, значения начиная с 16 + post_max_size (16MB – это значение по умолчанию) должно быть достаточно. Тем не менее, мы думаем, что документация неправа / устарела. Чтобы работать с тяжелыми приложениями можно начать со значения 16MB и начать разбираться уже в том случае, если ничего не работает. После изучения error_log станет понятно, хватает или нет сценарию памяти:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">[warn] mod_fcgid: stderr: PHP Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate 4864 bytes)&#8230;</span></p>
<p>В наших тестах мы поняли, что простые способы управления файлами в веб-приложениях могут загружать большие файлы, без проблем используя значение memory_limit по умолчанию – 16 MB. (Протестировано на RHEL с php 5.1, смотрите здесь: http://www.php.net/manual/en/features.file-upload.php#78017)</p>
<p><strong>Другие праметры</strong></p>
<p>Директива apache LimitRequestBody тоже может ограничивать загрузку больших файлов. Тем не менее, ее значение по умолчанию 0 и она обычно отсутствует в httpd.cond. Таким образом, по умолчанию ограничения отсутствуют.</p>
<p>Документация по всем вышеизложенным функциям доступна на сайтах php.net и httpd.apache.org.</p>
<p>.</p>
<p>Ранее:  <a href="http://compiling.ru/optimization/php-fcgid-i-apache-nerazberixa-iz-za-ogranichenij-zagruzki/">PHP, FCGID и Apache – неразбериха из-за ограничений загрузки</a>,</p>
<p><a href="http://compiling.ru/optimization/php-fcgid-i-apache-zavisimye-ot-vremeni-parametry/">PHP, FCGID и Apache, Зависимые от времени параметры</a></p>
<p>.</p>
<p>.</p>
<p>Источник:   http://blog.angulosolido.pt/2010/07/php-fcgid-and-apache-confusion-of.html</p>
<img src="http://compiling.ru/?ak_action=api_record_view&id=1523&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://compiling.ru/optimization/php-fcgid-i-apache-parametry-svyazannye-s-razmerom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP, FCGID и Apache, Зависимые от времени параметры</title>
		<link>http://compiling.ru/optimization/php-fcgid-i-apache-zavisimye-ot-vremeni-parametry/</link>
		<comments>http://compiling.ru/optimization/php-fcgid-i-apache-zavisimye-ot-vremeni-parametry/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 11:30:37 +0000</pubDate>
		<dc:creator>dan1005</dc:creator>
				<category><![CDATA[Optimization]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://compiling.ru/?p=1518</guid>
		<description><![CDATA[Следующие переменные PHP принимают участие: max_execution_time &#8211; этот параметр устанавливает максимальное процессорное время в секундах, отведенное на исполнение сценария. max_input_time &#8211; этот параметр устанавливает максимальное время в секундах, в течение которого сценарий обрабатывает входящие данные, типа POST, GET и закачка файла. Эти переменные могут быть включены в php.ini файле виртуального хоста, например: /home/DOMAINNAME/etc/php/php.ini Точный путь [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/a_time_management122.jpg" alt="Зависимые от времени параметры" width="256" height="189" /></p>
<p>Следующие переменные PHP принимают участие:</p>
<p><strong>max_execution_time</strong> &#8211; этот параметр устанавливает максимальное процессорное время в секундах, отведенное на исполнение сценария.</p>
<p><strong>max_input_time</strong> &#8211; этот параметр устанавливает максимальное время в секундах, в течение которого сценарий обрабатывает входящие данные, типа POST, GET и закачка файла.</p>
<p>Эти переменные могут быть включены в php.ini файле виртуального хоста, например:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">/home/DOMAINNAME/etc/php/php.ini</span></p>
<p>Точный путь к каждому php.ini зависит от вашей системы.</p>
<p>Следующие переменные Apache и mod_fcgid также задействованы и должны быть установленны в директиве виртуального хоста в httpd.conf:</p>
<p>Timeout &#8211; переменная Apache, которая используется для различных вещей, включая «время ожидания выхода из сценария CGI». По умолчанию это 300 секунд и используется на уровне apache, независимо от настройки PHP или других сценариев.</p>
<p>IPCCommTimeout/FcgidIOTimeout &#8211; этот параметр предназначен для mod_fcgid и не заменяет другие настройки. По умолчанию 40 секунд.</p>
<p><strong>Примечание:</strong> FcgidIOTimeout заменяет изначальный IPCCommTimeout для тех же самых целей.<br />
Таким образом, если широкий исходящий канал и размер файла поддерживается, то предполагаемое время загрузки до 10 минут, вы должны установить это в php.ini:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">max_input_time = 600</span></p>
<p>и для соответствующих виртуальных хостов в httpd.conf</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">IPCCommTimeout 600</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">Timeout 600</span></p>
<p>Например, если клиент хочет закачать 50MB через линию ADSL с предполагаемой скоростью исходящего канала 1Mbps, время загрузки в идеальных условиях будет:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">t = ( 50 * 1024 * 1024 * 8 ) / (1 * 1000 * 1000 * 0.8 ) ~ 524.29 секунд.</span></p>
<p>В изначальной формуле примерно 0.8 ‑ это потери для ADSL-канала, и предполагается, что трафик для ADSL-«окружения» достаточно низок, чтобы не влиять на передачу файла.</p>
<p>Что же касается max_execution_time, то сложно оценить его как процессорное время (т.е., считает только работа процесса, без ожидания «ввода-вывода»), но вы можете работать со значением по умолчанию, которое равно 30. В зависимости от общей загрузки сервера его можно как изменить, так и не трогать.</p>
<p>.</p>
<p>Начало:  <a href="http://compiling.ru/optimization/php-fcgid-i-apache-nerazberixa-iz-za-ogranichenij-zagruzki/">PHP, FCGID и Apache &#8211; неразбериха из-за ограничений загрузки</a></p>
<p>Далее:  <a href="http://compiling.ru/optimization/php-fcgid-i-apache-parametry-svyazannye-s-razmerom/">PHP, FCGID и Apache, Size related parameters</a></p>
<img src="http://compiling.ru/?ak_action=api_record_view&id=1518&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://compiling.ru/optimization/php-fcgid-i-apache-zavisimye-ot-vremeni-parametry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP, FCGID и Apache &#8211; неразбериха из-за ограничений загрузки</title>
		<link>http://compiling.ru/optimization/php-fcgid-i-apache-nerazberixa-iz-za-ogranichenij-zagruzki/</link>
		<comments>http://compiling.ru/optimization/php-fcgid-i-apache-nerazberixa-iz-za-ogranichenij-zagruzki/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 11:27:38 +0000</pubDate>
		<dc:creator>dan1005</dc:creator>
				<category><![CDATA[Optimization]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://compiling.ru/?p=1516</guid>
		<description><![CDATA[В веб-хостинге бывают ситуации, когда приложения PHP начинают себя некорректно вести. Это может происходить, например, при работе с вложениями в веб-интерфейсе электронной почты или при загрузке файла в приложение управления документацией. Все становится сложнее, если речь идет о хостинге в среде apache + mod_fcgid + php, так как там есть куча параметров, которые нужно настроить [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/speedbandits_speed_limit_prevention1.JPG" alt="PHP, FCGID и Apache - неразбериха из-за ограничений загрузки" width="300" height="248" /></p>
<p>В веб-хостинге бывают ситуации, когда приложения PHP начинают себя некорректно вести. Это может происходить, например, при работе с вложениями в веб-интерфейсе электронной почты или при загрузке файла в приложение управления документацией.</p>
<p>Все становится сложнее, если речь идет о хостинге в среде apache + mod_fcgid + php, так как там есть куча параметров, которые нужно настроить для работы с большими загрузками.</p>
<p>Как мы могли видеть, множество людей сталкиваются с ограничениями приложений и ищут пути решения, но нет удобного подведения итогов, где же сделать необходимые изменения.</p>
<p><strong>Кратко об архитектуре</strong></p>
<p>Традиционно интерпретатор PHP запускается и процессе apache. Apache загружает библиотеку PHP (mod_php.so) и использует ее для разбора страниц на PHP. Использование обертывания для исполнения PHP открывает новые возможности. Вот так разработчики mod_fcgid увидели подход к проблеме:</p>
<p><tt><em>mod</em></tt><tt><em>_</em></tt><tt><em>fcgid</em></tt><em> – это высокопроизводительная альтернатива для </em><em>mod_</em><em>cgi или </em><em>mod_</em><em>cgid, которая запускает достаточное количество экземпляров программы </em><em>CGI для обработки параллельных запросов, и эти программы по прежнему работают для обработки следующих запросов. Это благоприятствует </em><em>PHP-разработчикам, например, как предпочтительная альтернатива запуску </em><em>mod_</em><em>php в процессе работы, обеспечиваю похожую производительность. </em><br />
Не углубляясь в длительные дискуссии по поводу производительности (в наши дни производительность не так уж и дорога), мы увидим безопасность, как главную причину принять архитектуру на основе mod_fcgi. На самом деле, ее можно объединить с SuExec, чтобы каждый виртуальный хост Apache выполнял PHP с отдельным пользователем. Это действительно может спасти жизнь, с точки зрения предотвращения ущерба и анализа доказательств попыток взлома.</p>
<p>.</p>
<p>Далее: <a href="http://compiling.ru/optimization/php-fcgid-i-apache-zavisimye-ot-vremeni-parametry/">PHP, FCGID и Apache, Зависимые от времени параметры</a></p>
<p>Окончание:  <a href="http://compiling.ru/optimization/php-fcgid-i-apache-parametry-svyazannye-s-razmerom/">PHP, FCGID и Apache &#8211; Параметры, связанные с размером</a></p>
<img src="http://compiling.ru/?ak_action=api_record_view&id=1516&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://compiling.ru/optimization/php-fcgid-i-apache-nerazberixa-iz-za-ogranichenij-zagruzki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Установка Nginx с PHP 5.3 и PHP-FPM &#8211; Finish</title>
		<link>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-finish/</link>
		<comments>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-finish/#comments</comments>
		<pubDate>Mon, 05 Jul 2010 09:35:13 +0000</pubDate>
		<dc:creator>dan1005</dc:creator>
				<category><![CDATA[Optimization]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://compiling.ru/?p=1501</guid>
		<description><![CDATA[Step 3 – Завершение Перезапустите nginx, чтобы он подцепил изменения конфигурации, сделанные раньше. sudo /etc/init.d/nginx restart Перезагрузка должна пройти без проблем. После инсталляции php5-fpm, он должен запуститься. Если вы изменяли файлы php.ini,  то php5-fpm тоже нужно перезапустить. sudo /etc/init.d/php5-fpm restart Все правильно. Теперь они оба должны быть запущены. Step 4 – Тестирование Для проверки, что [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/nginx_php_128_128.jpg" alt="Установка Nginx с PHP Finish" width="126" height="127" /></p>
<p><strong>Step 3 – Завершение</strong></p>
<p><strong> </strong></p>
<p>Перезапустите nginx, чтобы он подцепил изменения конфигурации, сделанные раньше.</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo /etc/init.d/nginx restart</span></p>
<p>Перезагрузка должна пройти без проблем.</p>
<p>После инсталляции php5-fpm, он должен запуститься. Если вы изменяли файлы php.ini,  то php5-fpm тоже нужно перезапустить.</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo /etc/init.d/php5-fpm restart</span></p>
<p>Все правильно. Теперь они оба должны быть запущены.</p>
<p><strong>Step 4 – Тестирование</strong></p>
<p>Для проверки, что выполнение PHP работает, создайте файл index.php file в /var/www со следующим содержимым:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">&lt;?php phpinfo(); ?&gt;</span></p>
<p>Посетите ваш веб-сервер и вы должны увидеть сгенерированный phpinfo. Если его нет, то что-то сделано неправильно.</p>
<p><strong>Step 5  Поиск и исправление неисправностей, а так же заключительные заметки</strong></p>
<p>Если вы не видите phpinfo, то что-то сделано неправильно. Чтобы отследить, в чем же ошибка, вы можете проверить лог ошибок nginx:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo tail /var/log/nginx/error.log</span></p>
<p>Запомните, если вы меняете php.ini, то вам нужно перезапустить php5-fpm. Перезапуск nginx не нужен.</p>
<p>В своем примере конфигурации я включил перехват ошибок fastcgi. Если происходят серьезные ошибки (например, «невозможно переопределить класс xyz»), nginx может перехватить эту страницу и показать «хорошую» страницу ошибки, если что-то идет не так. Таким образом, в случае серьезных неполадок меньше информации выходит наружу.</p>
<p>Если вам это не нравится, то вы можете это отключить.</p>
<p>Если php5-fpm не запущен, то ваши файлы PHP не будут обработаны и nginx покажет пользователю страницу ошибки.</p>
<p>Ну, мы все сделали и вы можете обслуживать PHP с помощью вашего нового веб-сервера на основе nginx. Nginx неплох, и вы можете настраивать его как угодно. Если вам нужна перезапись, то знайте, что nginx не работает с файлами .htaccess. Вам будет нужно изменить настройки виртуального хоста, чтобы перезапись заработала.</p>
<p>.</p>
<p>Начало: <a href="http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-na-ubuntu-bez-kompilyacii-chego-libo/">Установка Nginx с PHP 5.3 и PHP-FPM на Ubuntu без компиляции чего-либо.</a></p>
<p>.</p>
<p>Источник:  http://www.howtoforge.com/installing-nginx-with-php-5.3-and-php-fpm-on-ubuntu-lucid-lynx-10.04-without-compiling-anything</p>
<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/faster-server.jpg" alt="Оцень быстрый сервер" width="320" height="220" /></p>
<img src="http://compiling.ru/?ak_action=api_record_view&id=1501&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-finish/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Установка Nginx с PHP 5.3 и PHP-FPM на Ubuntu без компиляции чего-либо.</title>
		<link>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-na-ubuntu-bez-kompilyacii-chego-libo/</link>
		<comments>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-na-ubuntu-bez-kompilyacii-chego-libo/#comments</comments>
		<pubDate>Mon, 05 Jul 2010 09:32:39 +0000</pubDate>
		<dc:creator>dan1005</dc:creator>
				<category><![CDATA[Optimization]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://compiling.ru/?p=1499</guid>
		<description><![CDATA[Так как Apache все чаще пожирает много памяти, люди начали искать другие способы хостинга сайтов. Apache, очевидно, не единственный доступный веб-сервер. Хорошими примерами служат lighttpd и nginx. В этом руководстве я покажу вам, как установить его на сервер Ubuntu. Однако это руководство относится и к Debian. Между ними существует лишь небольшая разница. Готовы? Так начнем. [...]]]></description>
			<content:encoded><![CDATA[<p><img style="border: 10px solid white;" src="http://compiling.ru/wp-content/uploads/2010/ubuntu-dev2.JPG" alt="Установка Nginx с PHP 5.3 и PHP-FPM " width="153" height="140" /></p>
<p>Так как Apache все чаще пожирает много памяти, люди начали искать другие способы хостинга сайтов. Apache, очевидно, не единственный доступный веб-сервер. Хорошими примерами служат lighttpd и nginx. В этом руководстве я покажу вам, как установить его на сервер Ubuntu. Однако это руководство относится и к Debian. Между ними существует лишь небольшая разница.</p>
<p>Готовы? Так начнем.</p>
<p><strong>Step 0 – Предварительное замечание</strong></p>
<p>Для работы с этим учебником, я надеюсь, у вас установлена система Ubuntu Lucid (10.04). Как это сделать вы можете прочесть в других руководствах. Это же руководство сосредотачивается на запуске nginx+php без особых хлопот.</p>
<p><strong>Step 1 – Nginx</strong></p>
<p><strong> </strong></p>
<p>Первый шаг, который нам нужно сделать, – это инсталляция nginx. Это просто сделать, скачав его из репозитория.</p>
<p>Виртуальный хост по умолчанию для правильной работы нужно изменить.</p>
<p>Хорошей отправной точкой для вашей конфигурации является:</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">server {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">listen   80;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">server_name  localhost;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">access_log  /var/log/nginx/localhost.access.log;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;"> </span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">## Default location</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">location / {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">root   /var/www;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">index  index.php;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;"> </span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">## Images and static content is treated different</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">access_log        off;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">expires           30d;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">root /var/www;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;"> </span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">## Parse all .php file in the /var/www directory</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">location ~ .php$ {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_split_path_info ^(.+\.php)(.*)$;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_pass   backend;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_index  index.php;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_param  SCRIPT_FILENAME  /var/www$fastcgi_script_name;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">include fastcgi_params;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_param  QUERY_STRING     $query_string;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_param  REQUEST_METHOD   $request_method;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_param  CONTENT_TYPE     $content_type;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_param  CONTENT_LENGTH   $content_length;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_intercept_errors        on;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_ignore_client_abort     off;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_connect_timeout 60;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_send_timeout 180;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_read_timeout 180;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_buffer_size 128k;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_buffers 4 256k;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_busy_buffers_size 256k;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">fastcgi_temp_file_write_size 256k;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;"> </span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">## Disable viewing .htaccess &amp; .htpassword</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">location ~ /\.ht {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">deny  all;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">upstream backend {</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">server 127.0.0.1:9000;</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">}</span></p>
<p>Хорошо, здесь мы разобрались. Теперь мы инсталлируем необходимые файлы для PHP.</p>
<p><strong>Step 2 &#8211; Установка PHP</strong></p>
<p>Много сайтов делается на PHP для обеспечения работы динамического контента например, такие как вики, форумы, веб-блоги или много чего другого.</p>
<p>Нет необходимости использовать DotDeb, так как PHP5.3 официально поддерживается в Ubuntu Lucid (10.04). Это просто как</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo apt-get update</span></p>
<p>Полученный текст должен включать dotdeb.</p>
<p>Сейчас мы установим PHP (часть 1):</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo apt-get install php5-cli php5-common php5-suhosin</span></p>
<p>Нам нужно установить cli раньше всего остального, потому что это может привести к проблемам в дальнейшем.</p>
<p>Для установки PHP-FPM, нам понадобится добавить к нему PPA, поскольку он официально не поддерживается.</p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">add-apt-repository ppa:brianmercer/php</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier;">sudo apt-get update &amp;&amp; sudo apt-get install php5-fpm php5-cgi</span></p>
<p>Если вы планируете использовать базы данных или вам нужны специфические модули (mcrypt, ldap, snmp и т.д.), то вы так же можете их установить.</p>
<p>Хорошо, теперь у нас есть nginx и PHP, установленные и готовые к запуску.</p>
<p>.</p>
<p>Продолжение:  <a href="http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-finish/">Установка Nginx с PHP 5.3 и PHP-FPM, тестирование, отладка, заключение.</a></p>
<img src="http://compiling.ru/?ak_action=api_record_view&id=1499&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://compiling.ru/optimization/ustanovka-nginx-s-php-5-3-i-php-fpm-na-ubuntu-bez-kompilyacii-chego-libo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
