Быстрая установка веб-сервера NGINX
16 Apr 2015 | Автор: dd |Имея доступ к достаточно большому пулу IP адресов на слабеньких серваках, озадачился тем, чтобы использовать их в seo целях, а точнее для создания сетки сателлитов. Точнее сетку сателлитов я клепаю достаточно давно, но все упиралось в то, что нужен и сервак довольно мощный и айпишки стоят дополнительных денег, т.ч все шло как то не особо быстро.
А не так давно задумался на счет того, что можно значительно экономить на хостинге, если к примеру хостить сателлиты на одном выделенном сервере, а вот публиковать их в сети, через сеть “балансеров” на слабеньких VPS в сетях различных хостеров, для получения разноплановой картины по подсетям c-класса. Пока руки до настройки проксирования через сторонний сервис не дошли, т.ч начал пока не спеша клепать просто сателлиты на дешманских впсках.
Собственно сам сателлит – простейший статический лендинг или малостраничник на HTML, которому особо ничего и не нужно кроме веб-сервера. Ставить для этих целей Apapche- неоправданная роскошь, поэтому я решил остановиться на российском веб-сервере Nginx, который гораздо легче и, имхо, гораздо проще в настройке.
Так что ниже небольшой манул о том, как на коленке быстро настроить Nginx для публикации сайтов, особо не вдаваясь в тонкости мастерства, т.к на сайтах не предполагается особого траффика, разве только после прогона их.
Ставлю я как обычно на CentOS 6+.
Для начала ставим репозитории EPEL откуда будем цеплять Nginx
# yum -y install epel-release
после чего уже можно ставить сам Nginx
# yum -y install nginx
и запускаем
# /etc/init.d/nginx start
чтобы понять куда сел наш веб-сервер, можем выполнить
# ifconfig eth0 | grep inet | awk ‘{ print $2 }’
смотрим что у нас с CPU на машине
# lscpu | grep ‘^CPU(s)’
CPU(s): 2
теперь переходим к конфигурации веб-сервера
### /etc/nginx/nginx.conf ###
user nginx;
worker_processes 2; # выставляем равным числу процов
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
gzip on; # включаем сжатие
include /etc/nginx/sites-enabled/*.conf; # подключаем конфиги доменов
server_names_hash_bucket_size 64; # величина хэша для обработки доменов
} # остальное все оставляем также
######################################
Переходим к правке первого домена:
# mkdir /etc/nginx/sites-available/
# cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/site.com.conf
и правим под себя конфиг сайта site.ru
### cat /etc/nginx/sites-available/site.com.conf ###
server {
listen 80;
server_name site.com www.site.com;
location / {
root /var/www/site.com;
index index.html index.htm;
try_files $uri $uri/ =404;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
####################
Второй создаем по аналогии, меняя только местоположение сайта и его доменное имя
root /var/www/site2.com;
server_name site2.com www.site2.com;
Создав файлы обслуживаемых доменов, разрешаем веб-серверу Nginx обрабатывать их:
# mkdir /etc/nginx/sites-enabled/
# ln -s /etc/nginx/sites-available/site.com.conf /etc/nginx/sites-enabled/site.com.conf
# ln -s /etc/nginx/sites-available/site2.com.conf /etc/nginx/sites-enabled/site2.com.conf
Включаем автостарт веб-сервера
# chkconfig nginx on
и перегружаем с новыми параметрами
# service nginx restart
Добавляем в файл /etc/hosts наши соответствия доменов и IP
site_IP site.com
site2_IP site2.com
после чего создаем папку сайта
# mkdir -p /var/www/site.com
и загружаем в неё наш сайт.
В принципе все готово и можем штамповать сателлиты на потоке. Отдельный приятный момент, что при создании всего этого барахла руками не надо потом бороться с дефолтными доменами, которые открываются по своему доменному имени и по привязанному IP.