<?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>Всякие интересные штучки для WEB-разработчика &#187; LAMP</title>
	<atom:link href="http://iphp.com.ua/archives/category/lamp/feed" rel="self" type="application/rss+xml" />
	<link>http://iphp.com.ua</link>
	<description>блог о технологиях web-разработки // all your base are belong to us</description>
	<lastBuildDate>Thu, 24 Jun 2010 05:23:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Nginx+Php-Fpm+Eaccelerator = Perfect Linux Server !</title>
		<link>http://iphp.com.ua/archives/470</link>
		<comments>http://iphp.com.ua/archives/470#comments</comments>
		<pubDate>Tue, 18 Aug 2009 20:43:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[FreeBSD/Linux]]></category>
		<category><![CDATA[LAMP]]></category>

		<guid isPermaLink="false">http://iphp.com.ua/?p=470</guid>
		<description><![CDATA[Цель: Построить быстрый и надёжный сервер, способный обслуживать несколько больших динамичных вебсайтов основанных на современных CMS (системах управления содержанием) и базе данных MySQL Cредства; 1, Достаточно мощный компьютер: &#8211; процессор+оперативная память+обьёмный винчестер+сетевая карта = должны быть хорошими по характеристикам и достаточно современными, 2, Постоянное соединение с быстрым интернетом, 3. Зарегестрированное имя домена и наличие DNS [...]]]></description>
			<content:encoded><![CDATA[<p>Цель: Построить быстрый и надёжный сервер, способный обслуживать несколько больших динамичных вебсайтов основанных на современных CMS (системах управления содержанием) и базе данных MySQL</p>
<p>Cредства; 1, Достаточно мощный компьютер: &#8211; процессор+оперативная память+обьёмный винчестер+сетевая карта = должны быть хорошими по характеристикам и достаточно современными, 2, Постоянное соединение с быстрым интернетом, 3. Зарегестрированное имя домена и наличие DNS (Domain Name Server). на котором этот домен припаркован,</p>
<p>Начали: Грузим OS http://www.ubuntu.com/getubuntu/download Здесь надо выбрать OS соответствующую архитектуре железа: x86 или AMD64. Я буду писать для AMD64, что впрочем подходит с небольшими изменениями и для x86 После того, как файл загрузился, надо записать его в том же формате т.е. .iso, чтобы с него можено было запускать компьютер.</p>
<p>Надеюсь всё прошло хорошо и сомпьютер запустился с СДишки. Предупреждаю, компьютер должен быть отведен специально для цели служить СЕРВЕРОМ. Т.е. всё, что было в нём прежде, будет утрачено !!!</p>
<p>Ubuntu установить очень просто, достаточно выбрать язык установки и следовать указаниям. Важно сделать правильную разметку диска. Для root или &#8220;/&#8221; достаточно 8 ГБ , swap расчитывается по формуле active RAM x 2. т.е. если общий размер оперативной памяти составляет 1 ГБ, то swap должен быть не меньше 2 ГБ. Остальное пространство отдадим /home. Там будет сидеть всё хозяйство сервера.</p>
<p>После того как система задышала и ты в неё вошёл первым делом добавь терминал на панель. Ну и понеслись: (Я буду писать коды для терминала, тебе надо их скопировать, вставить и нажать &#8220;enter&#8221;. Свои пояснения я буду отделять запятыми, скобками или кавычками, чтобы программа их не распознала, даже если ты их по ошибке и введешь)</p>
<p>sudo apt-get update</p>
<p>sudo apt-get upgrade</p>
<p>(процесс получения обновлений, надо будет ввести пароль)</p>
<p>sudo aptitude install mysql-server</p>
<p>(ждём пока установится)</p>
<p>sudo mysql_secure_installation</p>
<p>(на все вопросы &#8211; yes и устанавливаем пароль, очень важно его не забыть и сделать достаточно сложныи)</p>
<p>(Установим дополнительные библиотеки)</p>
<p>sudo aptitude install build-essential libtool libltdl3-dev libgd-dev libmcrypt-dev libxml2-dev libmysqlclient15-dev flex m4 awk automake autoconf bison make libbz2-dev libpcre3-dev libssl-dev zlib1g-dev vim re2c libjpeg-dev libpng-dev</p>
<p>(Мы будем собирать PHP с PHP-FPM заплаткой из источника.)</p>
<p>cd /usr/local/src</p>
<p>wget http://us.php.net/get/php-5.2.10.tar.gz/from/ru.php.net/mirror</p>
<p> tar xzvf php-5..10.tar.gz</p>
<p>wget php-fpm.org/downloads/php-5.2.10-fpm-0.5.13.diff.gz</p>
<p> gzip -cd php-5.2.10-fpm-0.5.13.diff.gz | patch -d php-5.2.10 -p1</p>
<p> cd php-5.2.10</p>
<p>./configure &#8211;enable-fastcgi &#8211;enable-fpm &#8211;enable-exif &#8211;with-mcrypt &#8211;with-zlib &#8211;enable-mbstring &#8211;with-openssl &#8211;with-mysql &#8211;with-mysql-sock &#8211;with-gd &#8211;with-gettext &#8211;with-jpeg-dir=/usr/lib &#8211;enable-gd-native-ttf &#8211;without-sqlite &#8211;disable-pdo &#8211;disable-reflection &#8211;with-libdir=lib64 &#8211;with-pgsql=/usr/lib/pgsql &#8211;with-mysql=/usr/lib64/mysql</p>
<p>(Если сборка будет жаловаться, что не хватает чего то, то можно будет найти и установить недостающее через Synaptic)</p>
<p>make all install</p>
<p>strip /usr/local/bin/php-cgi</p>
<p>( Теперь отрегулируем PHP-FPM, о котором хочу сказать особо. Php-fpm &#8211; это продукт напряжённого бескорыстного труда нашего соотечественника Андрея Нигматулина, И этим продуктом, как и NGINXом от Игоря Сысоева, уже пользуются миллионы админов по всему миру, несмотря на то, что мало кто из из них говорит и понимает по русски и что отсутствует подробная документация. Золото видно издалека &#8230;. И цена его понятна на любых языкахMoney mouth )</p>
<p>sudo gedit /usr/local/etc/php-fpm.conf</p>
<p>(линия 63 убрать стрелки и тире перед и за кодом и поменять nobody на)</p>
<p>www-data</p>
<p>( то же самое для линии 66)</p>
<p>www-data</p>
<p>(Устанавливаем NGINX web server)</p>
<p>cd /usr/local/src</p>
<p>wget sysoev.ru/nginx/nginx-0.7.61.tar.gz</p>
<p>tar xzvf nginx-0.7.61.tar.gz</p>
<p>cd nginx-0.7.61</p>
<p>(нам не нужны почтовые функции NGINX потому, что мы будем использовать внешний почтовый агент чтобы не нагружать сервер)</p>
<p>./configure &#8211;sbin-path=/usr/local/sbin &#8211;with-http_ssl_module &#8211;without-mail_pop3_module &#8211;without-mail_imap_module &#8211;without-mail_smtp_module</p>
<p>make</p>
<p>make install</p>
<p>(настроим NGINX)</p>
<p>sudo gedit /usr/local/nginx/conf/nginx.conf</p>
<p>(см. прикрерплённый файл)</p>
<p>http://vkimo.org/files/nginx.txt</p>
<p>(Обрати внимание на &#8220;root /home/TVOI FOLDER/$host;&#8221; &#8211; здесь надо указать путь к папке, где будет сидеть всё содержание сайта. &#8220;$host&#8221; это абсолютное значение, которое вытащит и опубликует любой сайт если он зарегестрирован, находится на работающем домайн найм сервере и сидит в отдельной папке в твоей домашней папке &#8220;TVOI FOLDER&#8221; под названием твоего сайта т.е. &#8220;moisite.com&#8221;. А также на &#8220;server_name &#8221; Символ &#8221; _ &#8221; &#8211; это Изумительное по простоте и удобству решение автора NGINX Игоря Сысоева http://sysoev.ru/nginx/ способа адресовать виртуальные хосты. Apache и даже Lighttpd здесь отдыхают плотно.</p>
<p>Теперь создадим место для содержимого нашего вебсайта и изменим соответственно /home/TVOI FOLDER/$host</p>
<p>sudo mkdir /home/www</p>
<p>sudo mkdir /home/www/точное название твоего сайта (мойсайт.ru)</p>
<p>sudo chmod -R tvoeimya:tvoeimya /home/www/moisite.ru (tvoeimya надо поменять на имя пользователя, под которым ты работаешь в своём сервере, Это даст тебе возможность управлять содержимым папки сайта без необходимости входить в сервер под привелегированным пользователем &#8211; root.</p>
<p>(Создадим также два файла внутри папки сайта)</p>
<p>gedit /home/www/moi site.ru/index.html</p>
<p>(вставить в пустой файл что-нибудь вроде &#8211; Это мой первый сайт !!! )</p>
<p>gedit /home/www/moisite.ru/info.php</p>
<p>(Вставить этот код в пустой файл сохранить и закрыть)</p>
<p><?php<br />
phpinfo();<br />
?></p>
<p>Продолжаем: надо отрегулировать fastcgi_params)</p>
<p>sudo gedit /usr/local/nginx/conf/fastcgi_params</p>
<p>(и в самый верх добавляем)</p>
<p>fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;</p>
<p>(а также выключаем, ставим &#8220;#&#8221; перед #fastcgi_param REDIRECT_STATUS 200; примочку для арача потому что мы его здесь не имеем )</p>
<p>(Полируем PHP код)</p>
<p>sudo gedit /usr/local/lib/php.ini</p>
<p>(вставить это в пустой файл)</p>
<p>_________________________________________________________________________________________</p>
<p>magic_quotes_gpc=0<br />
[xcache-common]<br />
#zend_extension = /usr/local/lib/php/extensions/no-debug-non-zts-20060613/xcache.so<br />
[xcache]<br />
#xcache.shm_scheme = &#8220;mmap&#8221;<br />
#xcache.size = 64M<br />
default_charset = “utf-8″<br />
[memcache]<br />
#extension = memcache.so<br />
#memcache.hash_strategy=&#8221;consistent&#8221;<br />
[memcache]<br />
[suhosin]<br />
#extension = suhosin.so<br />
#extension = apc.so<br />
#apc.shm_size = 48<br />
[suhosin]<br />
; For Unix only. You may supply arguments as well (default: &#8220;sendmail -t -i&#8221;).<br />
sendmail_path = /usr/sbin/sendmail -i -t<br />
upload_max_filesize=8M<br />
[eaccelerator]<br />
#zend_extension=&#8221;/usr/local/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so&#8221;<br />
#eaccelerator.shm_size=&#8221;16&#8243;<br />
#eaccelerator.cache_dir=&#8221;/tmp/eaccelerator&#8221;<br />
#eaccelerator.enable=&#8221;1&#8243;<br />
#eaccelerator.optimizer=&#8221;1&#8243;<br />
#eaccelerator.check_mtime=&#8221;1&#8243;<br />
#eaccelerator.debug=&#8221;0&#8243;<br />
#eaccelerator.filter=&#8221;"<br />
#eaccelerator.shm_max=&#8221;0&#8243;<br />
#eaccelerator.shm_ttl=&#8221;0&#8243;<br />
#eaccelerator.shm_prune_period=&#8221;0&#8243;<br />
#eaccelerator.shm_only=&#8221;0&#8243;<br />
#eaccelerator.compress=&#8221;1&#8243;<br />
#eaccelerator.compress_level=&#8221;9&#8243;<br />
[eaccelerator]</p>
<p>_________________________________________________________________________________________</p>
<p>(Как видно, большинство примочек выключено. Это на потом, потому что ни одна из тех примочек ещё у тебя не установлена. Мы это сделаем позже)</p>
<p>(Надо попробовать стартануть php-fpm)</p>
<p>php-fpm start</p>
<p>(Теперь NGINX)</p>
<p>nginx</p>
<p>(Если ошибок нет &#8211; будь горд собой !!!)</p>
<p>(Надо теперь сделать так чтобы оба сервиса запускались автоматически вместе с запуском сервера)</p>
<p>cd /etc/init.d/</p>
<p>ln -s /usr/local/sbin/php-fpm php-fpm</p>
<p>/usr/sbin/update-rc.d -f php-fpm defaults</p>
<p>(Это было просто для php-fpm, немного сложнее для NGINX)</p>
<p>sudo kill `cat /usr/local/nginx/logs/nginx.pid`<br />
sudo gedit /etc/init.d/nginx<br />
(и вставить этот код в пустой файл)</p>
<p>_________________________________________________________________________________________</p>
<p>### BEGIN INIT INFO<br />
# Provides: nginx<br />
# Required-Start: $all<br />
# Required-Stop: $all<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: starts the nginx web server<br />
# Description: starts nginx using start-stop-daemon<br />
### END INIT INFO</p>
<p>PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin<br />
DAEMON=/usr/local/sbin/nginx<br />
NAME=nginx<br />
DESC=nginx</p>
<p>test -x $DAEMON || exit 0</p>
<p># Include nginx defaults if available<br />
if [ -f /etc/default/nginx ] ; then<br />
. /etc/default/nginx<br />
fi</p>
<p>set -e</p>
<p>case &#8220;$1&#8243; in<br />
start)<br />
echo -n &#8220;Starting $DESC: &#8221;<br />
start-stop-daemon &#8211;start &#8211;quiet &#8211;pidfile /usr/local/nginx/logs/nginx.pid \<br />
&#8211;exec $DAEMON &#8212; $DAEMON_OPTS<br />
echo &#8220;$NAME.&#8221;<br />
;;<br />
stop)<br />
echo -n &#8220;Stopping $DESC: &#8221;<br />
start-stop-daemon &#8211;stop &#8211;quiet &#8211;pidfile /usr/local/nginx/logs/nginx.pid \<br />
&#8211;exec $DAEMON<br />
echo &#8220;$NAME.&#8221;<br />
;;<br />
restart|force-reload)<br />
echo -n &#8220;Restarting $DESC: &#8221;<br />
start-stop-daemon &#8211;stop &#8211;quiet &#8211;pidfile \<br />
/usr/local/nginx/logs/nginx.pid &#8211;exec $DAEMON<br />
sleep 1<br />
start-stop-daemon &#8211;start &#8211;quiet &#8211;pidfile \<br />
/usr/local/nginx/logs/nginx.pid &#8211;exec $DAEMON &#8212; $DAEMON_OPTS<br />
echo &#8220;$NAME.&#8221;<br />
;;<br />
reload)<br />
echo -n &#8220;Reloading $DESC configuration: &#8221;<br />
start-stop-daemon &#8211;stop &#8211;signal HUP &#8211;quiet &#8211;pidfile /usr/local/nginx/logs/nginx.pid \<br />
&#8211;exec $DAEMON<br />
echo &#8220;$NAME.&#8221;<br />
;;<br />
*)<br />
N=/etc/init.d/$NAME<br />
echo &#8220;Usage: $N {start|stop|restart|force-reload}&#8221; >&#038;2<br />
exit 1<br />
;;<br />
esac<br />
exit 0</p>
<p>_________________________________________________________________________________________</p>
<p>(разумеется его надо сохранить, закрыть и сделать исполняемым)</p>
<p>sudo chmod +x /etc/init.d/nginx<br />
sudo /usr/sbin/update-rc.d -f nginx defaults</p>
<p>(Увидишь примерно такой выход):</p>
<p>Adding system startup for /etc/init.d/nginx &#8230;<br />
/etc/rc0.d/K20nginx -> ../init.d/nginx<br />
/etc/rc1.d/K20nginx -> ../init.d/nginx<br />
/etc/rc6.d/K20nginx -> ../init.d/nginx<br />
/etc/rc2.d/S20nginx -> ../init.d/nginx<br />
/etc/rc3.d/S20nginx -> ../init.d/nginx<br />
/etc/rc4.d/S20nginx -> ../init.d/nginx<br />
/etc/rc5.d/S20nginx -> ../init.d/nginx</p>
<p>(Последнее в этом уроке:</p>
<p>Если мы ожидаем хорошее движение на сайте, то необходимо создать файл для logrotate, который автоматически будет сжимать и удалять старые файлы и давать нам возможность контролировать кто бывал на нашем сайте)<br />
sudo gedit /etc/logrotate.d/nginx</p>
<p>(вставить это в пустой файл и сохранить)</p>
<p>_________________________________________________________________________________________</p>
<p>/usr/local/nginx/logs/*.log {<br />
daily<br />
missingok<br />
rotate 9<br />
compress<br />
delaycompress<br />
notifempty<br />
postrotate<br />
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`<br />
endscript<br />
} </p>
]]></content:encoded>
			<wfw:commentRss>http://iphp.com.ua/archives/470/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>301 Permanent Redirect</title>
		<link>http://iphp.com.ua/archives/144</link>
		<comments>http://iphp.com.ua/archives/144#comments</comments>
		<pubDate>Wed, 12 Nov 2008 13:52:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[LAMP]]></category>

		<guid isPermaLink="false">http://iphp.com.ua/?p=144</guid>
		<description><![CDATA[New domain name? Need to change a file name? Hierarchy of your servers directory structure change? meta http-equiv=&#8221;refresh&#8221;&#8230; is highly frowned on by search engines and is commonly used by spammers. As such, THIS SHOULD BE AVOIDED. A 301 Redirect as it is commonly referred to will allow you to make these changes without compromising [...]]]></description>
			<content:encoded><![CDATA[<p><strong>New domain name?</strong></p>
<p><strong>Need to change a file name?</strong></p>
<p><strong>Hierarchy of your servers directory structure change?</strong></p>
<p>meta http-equiv=&#8221;refresh&#8221;&#8230; is highly frowned on by search engines and is  commonly used by spammers. As such, THIS SHOULD BE AVOIDED.</p>
<p>A 301 Redirect as it is commonly referred to will allow you to make these  changes without compromising your hard earned SEO results.</p>
<p>Using the Apache web server, fortunately this is a simply task.</p>
<p>There are a few different places you can set various &#8216;Redirect&#8217; directives such  as your servers main configuration file (typically httpd.conf) or within a  &#8216;Virtual Host&#8217; container inside one of your server configuration files. The  final method and the one we will be discussing here is using your servers  directory Auth file (AKA: .htaccess).<span id="more-144"></span></p>
<p>The first thing you do is create a file named .htaccess</p>
<p>There are a couple different way to approach this but in it most simple form you  can just issue a &#8216;Redirect&#8217; request in your .htaccess file like so:</p>
<p>Redirect /foo http://foobar.com/foo</p>
<p>In this example if the client requests</p>
<p>http://myserver.com/foo/foobar.txt,</p>
<p>it will be told to access<br />
http://foobar.com/foo/foobar.txt instead.</p>
<p>Now this is not quite complete yet, since we need to specifically send a 301  status code. Without the status argument &#8220;Redirect&#8221; will send a temporary  redirect status (302). So we simply take the above example and change it to:</p>
<p>Redirect 301 /foo http://foobar.com/foo</p>
<p>OR</p>
<p>Redirect permanent /foo http://foobar.com/foo</p>
<p>And there is also a specific &#8216;RedirectPermanent&#8217; directive as well so you could  just as easily say:</p>
<p>RedirectPermanent /foo http://foobar.com/foo</p>
<p>So far so good? Excellent. So now you ask what if I want to change ALL my .htm  files to .html. Introducing &#8216;RedirectMatch&#8217; which makes use of standard regular  expression syntax.</p>
<p>RedirectMatch (.*)\.htm$ http://myserver.com$1.html</p>
<p>Going into an in depth explanation of regular expression if beyond the scope of  this tutorial but a quick Google search for &#8220;Perl compatible regular expression  syntax&#8221; should set you on your way.</p>
<p>What the above example does is match any character &#8216;.&#8217; any number of times &#8216;*&#8217;,  i.e., that is it will match everything. (.*) the parenthesis group the result  into a variable which we will use with a back-reference ($1) later in the  directive. Next, &#8216;\&#8217; simply escapes the following &#8216;.&#8217;. Since &#8216;.&#8217; has special  meaning in regular expression syntax we need to escape it if we want to use it  in the literal sense, &#8216;\&#8217; provides the escape sequence. Next is the &#8216;.htm&#8217; which  we know is a static part of the search string we&#8217;re looking for followed by &#8216;$&#8217;  which simply marks the end of the pattern in a regular expression (regex). So  the above example takes any file with an .htm extension and redirects the client  to the same file at the location specified, i.e., http://myserver.com$1.html</p>
<p>But wait, what&#8217;s that &#8216;$1&#8242;? Well remember we said we were going to store a  variable for use in a back reference later, well here it is. The &#8216;$1&#8242; simply  says that whatever was in (.*) is now represented by $1</p>
<p>So, the client request for example foobar.htm, the above directive matches this  and redirects the client to http://myserver.com/foobar.html because &#8216;foobar&#8217; is  stored in &#8216;$1&#8242;. Just as with &#8216;Redirect&#8217;, &#8216;RedirectMatch&#8217; takes a status argument  so to issue a 301 (permanent) redirect we do this:</p>
<p>RedirectMatch 301 (.*)\.htm$ http://myserver.com$1.html</p>
<p>Another method we can use is via mod_rewrite. This requires that the mod_rewrite  module is active on your webserver. It usually is and is done by the system  administrators when they installed the webserver. mod_rewrite is a very powerful  URL re-writing engine and we will only by scratching a hair on its head here.</p>
<p>Again, in your .htaccess file</p>
<p>RewriteEngine ON<br />
RewriteRule ^(.*)$ http://mynewdomain.com/$1 [R=301,L]</p>
<p>The above example will re-map your old domain to a new one and issue a 301  status code (permanent redirect). So a request for</p>
<p>http://olddomain.com/foobar.html will go to</p>
<p>http://mynewdomain.com/foobar.html</p>
<p>If you simply want to redirect all requests regardless of the page requested to  the new domain you could use:</p>
<p>RewriteRule /.* http://mynewdomain.com/ [R=301,L]</p>
<p>In this case no matter what file or directory is requested they will all go to</p>
<p>http://mynewdomain.com/ i.e., http://myolddomain.com/foobar.html</p>
<p>will go to http://mynewdomain.com/</p>
<p>The [R=301,L] means redirect the client and send a 301 status code (R=301) and  make this the last rule (L).</p>
<p>Whichever method you decide on, once completed upload the resulting file to your  webservers document root and you should be on your way.</p>
<h2>Related 301 Redirect and Resources</h2>
<ul>
<li><strong>Mod Rewrite</strong><br />
<a class="sidelink" href="http://httpd.apache.org/docs-2.0/mod/mod_rewrite.html" target="_blank"> http://httpd.apache.org/docs-2.0/mod/mod_rewrite.html</a></li>
<li><strong>URL Rewriting Guide</strong><br />
<a class="sidelink" href="http://httpd.apache.org/docs-2.0/misc/rewriteguide.html" target="_blank"> http://httpd.apache.org/docs-2.0/misc/rewriteguide.html</a></li>
<li><strong>Redirect Directives</strong><br />
<a class="sidelink" href="http://httpd.apache.org/docs-2.0/mod/directives.html#R" target="_blank"> http://httpd.apache.org/docs-2.0/mod/directives.html#R</a></li>
</ul>
<p>Also, a Google search for &#8217;301 redirect+seo&#8217; or &#8216;mod_rewrite+301 redirect&#8217;  should turn up tons of information.</p>
]]></content:encoded>
			<wfw:commentRss>http://iphp.com.ua/archives/144/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nginx</title>
		<link>http://iphp.com.ua/archives/14</link>
		<comments>http://iphp.com.ua/archives/14#comments</comments>
		<pubDate>Mon, 05 Nov 2007 17:37:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Highload/Balancing]]></category>
		<category><![CDATA[LAMP]]></category>
		<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Все умные мальчики насмотрелись презентаций и уже давно установили себе на сервера NGINX. Полезные линки по теме: хорошее описание внутренностей список рассылки 1 http://dir.gmane.org/gmane.comp.web.nginx.russian (читать обязательно) список рассылки 2 http://www.lexa.ru/nginx-ru/ Nginx memcached rails Nginx English Wiki]]></description>
			<content:encoded><![CDATA[<p>Все умные мальчики насмотрелись презентаций и уже давно установили себе на сервера <a href="http://sysoev.ru/nginx/" target="_blank" title="NGINX">NGINX</a>.</p>
<p>Полезные линки по теме:</p>
<ol>
<li>хорошее <a href="http://www.riceonfire.org/emiller/nginx-modules-guide.html">описание внутренностей</a></li>
<li>список рассылки 1 <a href="http://dir.gmane.org/gmane.comp.web.nginx.russian">http://dir.gmane.org/gmane.comp.web.nginx.russian</a> (читать обязательно)</li>
<li>список рассылки 2 <a href="http://www.lexa.ru/nginx-ru/">http://www.lexa.ru/nginx-ru/</a></li>
<li><a href="http://maxidoors.ru/articles/2007/04/24/nginx-memcached-rails" target="_blank">Nginx memcached rails</a></li>
<li><a href="http://wiki.codemongers.com/Main">Nginx English Wiki</a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://iphp.com.ua/archives/14/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WEB-сервер 0W-httpd (ZeroWait httpd)</title>
		<link>http://iphp.com.ua/archives/21</link>
		<comments>http://iphp.com.ua/archives/21#comments</comments>
		<pubDate>Mon, 05 Nov 2007 17:36:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Highload/Balancing]]></category>
		<category><![CDATA[LAMP]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Смотрел однажды  доклад разработчиков системы статистики для liveinternet.ru&#8230; Так вот один из них сказал, что они используют сервер 0W-httpd, который не доступен в исходниках. Так вот это неправда Сайт программки http://0w.ru/httpd/, свеженькая версия 0.7q вышла недавно&#8230; 0W-httpd &#8211; производительный и &#8220;легкий&#8221; web-сервер. Область применения: сайты со статическим содержимым (&#8220;картиночные&#8221; сервера, файловые архивы), узкоспециализированные сервера (баннерные, счетчиковые системы), [...]]]></description>
			<content:encoded><![CDATA[<p>Смотрел однажды  доклад разработчиков системы статистики для liveinternet.ru&#8230; Так вот один из них сказал, что они используют сервер 0W-httpd, который не доступен в исходниках. Так вот это неправда <img src='http://iphp.com.ua/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Сайт программки <a href="http://0w.ru/httpd/">http://0w.ru/httpd/</a>, свеженькая версия <strong>0.7q</strong> вышла недавно&#8230;</p>
<p><strong>0W-httpd</strong> &#8211; производительный и &#8220;легкий&#8221; web-сервер.</p>
<p>Область применения: сайты со статическим содержимым (&#8220;картиночные&#8221; сервера, файловые архивы), узкоспециализированные сервера (баннерные, счетчиковые системы), акселератор для высоко-загруженных серверов общего назначения. Фактически производительность ограничена возможностями сетевой карты и жесткого диска.<br />
<span id="more-21"></span></p>
<p>Основные преимущества и возможности:</p>
<ul>
<li>низкая требовательность к ресурсам (память и CPU)</li>
<li>быстрая реакция на запросы (до нескольких тысяч запросов в секунду)</li>
<li>поддержка большого количества одновременных соединений (до нескольких тысяч)</li>
<li>возможность работы в качестве акселератора для более универсальных серверов (Apache)</li>
<li>поддержка средств повышения производительности протокола http: keep-alive запросы, pipelined-запросы, &#8220;докачка&#8221;</li>
<li>использование эффективных механизмов Linux (RealTime signals, sendfile) и FreeBSD (kqueue, sendfile), для других ОС: poll, mmap, read/write.</li>
</ul>
<p>ОС: Linux, FreeBSD<br />
Текущая версия: <a href="http://0w.ru/httpd/0W-httpd-0.7q.tar.gz">0.7q</a> (<a href="http://0w.ru/httpd/httpd.ru.txt">описание файла конфигурации</a>)<br />
<a href="http://0w.ru/httpd/Changes.rus">Список изменений</a> (1 ноября 2007)</p>
]]></content:encoded>
			<wfw:commentRss>http://iphp.com.ua/archives/21/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
