В стандартных репозиториях Debian находится устаревшая версия nginx.
Как установить новую версию смотрим тут.
С установкой Nginx покончено, далее устанавливаем LAMP
apt-get install apache2 apt-get install libapache2-mod-php5 php5 php5-common php5-curl php5-gd php5-imagick php5-mcrypt php5-memcache php5-mhash php5-mysql php5-pspell php5-snmp php5-sqlite php5-xmlrpc php5-xsl
Установим Mysql-Server:
apt-get install mysql-server mysql-client
Установим phpmyadmin:
apt-get install phpmyadmin
Для удобства добавления виртуальных хостов в apache2 по желанию можно установить Webmin:
Переходим в папку tmp для этого набираем:
cd /tmp
Далее скачиваем установочный пакет:
wget https://prdownloads.sourceforge.net/webadmin/webmin_1.710_all.deb
После того как процесс скачивания пакета завершился нам нужно его установить, для установки набираем:
dpkg -i webmin_1.710_all.deb
Если dpkg ругнулся на зависимости набираем следующее:
apt-get install -f
Теперь приступим к установке FTP сервера.
Набираем в консоле:
apt-get install proftpd
Создаем нового виртуального ftp-пользователя с логином someuser, идентификатором 33, группой 33 и домашним каталогом /var/www/mysite.com
ftpasswd --passwd --file=/etc/proftpd/ftpd.passwd --name=someuser --uid=33 --gid=33 --home=/var/www/mysite.com --shell=/bin/false
После выполнения команды система попросит ввести дважды пароль пользователя.
В итоге, у нас появится файл /etc/proftpd/ftp.passwd с записью о пользователе.
Теперь нам небходимо добавить в конфиг нужные параметры для полноценной работы FTP сервера. Конфиг находится сдесь «/etc/proftpd/proftpd.conf» открываем его:
nano /etc/proftpd/proftpd.conf
Добавляем возможность подключения виртуальных пользователей
RequireValidShell off AuthUserFile /etc/proftpd/ftpd.passwd
Идём в самый конец файла и добавляем такие строчки:
<Anonymous /var/www/mysite.com> # ДИРИКТОРИЯ САЙТА. User someuser # ПОЛЬЗОВАТЕЛЬ КОТОРОГО МЫ ДОБАВИЛИ Group www-data AnonRequirePassword on MaxClients 10 "The server is full, hosting %m users" DisplayLogin welcome.msg <Limit LOGIN> Allow from all Deny from all </Limit> AllowOverwrite on <Limit LIST NLST STOR STOU APPE RETR RNFR RNTO DELE MKD XMKD SITE_MKDIR RMD XRMD SITE_RMDIR SITE SITE_CHMOD SITE_CHGRP MTDM PWD XPWD SIZE STAT CWD XCWD CDUP XCUP > AllowAll </Limit> <Limit NOTHING > DenyAll </Limit> </Anonymous>
И перезагружаем FTP сервер
/etc/init.d./proftpd restart
С установкой всех компонентов сервера мы закончили, приступим к настройкам.
Настраиваем Nginx:
Создаем конфигурационный файл proxy.conf
nano /etc/nginx/proxy.conf
Вписываем следующее
proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 1500; proxy_send_timeout 1500; proxy_read_timeout 1500; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; proxy_ignore_client_abort on;
В каталоге «/etc/nginx/conf.d/» создаем конфиг виртуального хоста.
nano /etc/nginx/conf.d/site.com.conf
Пример виртуального хоста:
upstream site_com { # АДРЕС BACK-END'A server 127.0.0.1:81; } server { listen 80; server_name site.com www.site.com; access_log /var/log/nginx/site.com_access.log; error_log /var/log/nginx/site.com_error.log; # ПЕРЕНАПРАВЛЕНИЕ НА BACK-END location / { proxy_pass https://site_com; include /etc/nginx/proxy.conf; } # СТАТИЧЕСКИОЕ НАПОЛНЕНИЕ ОТДАЕТ САМ NGINX # BACK-END ЭТИМ ЗАНИМАТЬСЯ НЕ ДОЛЖЕН location ~* \.(jpg|jpeg|gif|png|ico|css|bmp|swf|js)$ { root /var/www/путь_к_Вашему_сайту; } }
Настройка Apache2:
Меняем порт по умолчанию для apache2, открываем
nano /etc/apache2/ports.conf
И меняем значения «NameVirtualHost» и «Listen» с 80 порта на 81, должно получится так:
NameVirtualHost *:81 Listen 81
Пример Виртуал хоста для apache2
<VirtualHost *:81> DocumentRoot /var/www/путь_к_Вашему_сайту ServerName your_site.com ServerAlias www.your_site.com <Directory "/var/www/путь_к_Вашему_сайту"> allow from all Options -Indexes </Directory> </VirtualHost>
Перезагружаем оба веб сервера
/etc/init.d/apache2 restart && /etc/init.d/nginx restart
Успехов.