Фотогалереи

Услуги

Помощь при использовании сайта

nginx

Статьи о настройке легковесного веб - сервера nginx, его качества и недостатки. Подробные инструкции с примерами конфигураций

Замена Apache. Nginx и FastCGI

Совсем недавно я писал о том как заставить работать связку Apache+Nginx.  Там все немного проще из-за того что backend'ом выступал многим знакомый Apache с его mod_php .htaccess и прочими радостями. Принципиально не хочу сравнивать Apache и Nginx, так как у каждого на этот счет свои соображения. И разжигать холивар я не хочу. Моя цель максимально доступно описать установку и настройку сабжа. Итак, что нам понадобится для того чтобы полностью выкинуть индейца? (О том как поставить и более менее настроить сам nginx я писал тут) Устанавливаем нужные пакеты:



Apache & Nginx

Для чего нужна связка Apache & Nginx можно конечно поискать и в других уголках необъятной Сети, но я ж велосипедист и поэтому напишу своими словами. В процессе работы Web сервера Apache он при каждом новом подключении к нему парождает новый процесс, даже если нет ни одного подключению к серверу, то неизменно 4-5 процессов httpd имеется в системе. Тем самым апач плодит n-ное количество процессов, что конечно же сказывается на объеме свободной оперативной памяти и повышенной нагрузке на процессор сервера. Nginx позволяет снизить эту нагрузку в много раз. Данная связка веб серверов примерно такая на фронтенд (frontend) ставится энджинкс который и ловит все входящие подключения от юзер-агентов ваших посетителей. Далее, если запрашивается статический контент такой как html страницы, фотографии, расшаренный файл, то nginx сам обрабатывает данный запрос и максимально быстро отдает его клиенту. Если же требуется обработка какого либо php скрипта, то nginx отловив запрос от клиента отдает его апачу (backend) а тот уже в свою очередь с помощью своего mod_php обрабатывает скрипт и отдает nginx'у уже готовые данные при этом количество запущенных процессов Апача не растет ( у апача в такой связке как я понимаю всего одно подключение с 127.0.0.1 на котором он принимает запросы от nginx). Если говорить еще проще то nginx это легкая прослойка между клиентом и основным мощным веб сервером позволяющая не плодить процессов Апача сберегая тем самым драгоценный RAM. Теперь о настройке. Так как я не юзаю дебианы и прочие убунты опишу процесс установки и настройки в рамках Arch Linux.