Показать сообщение отдельно
Старый 08.02.2013, 18:23 Вверх   #1
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
Хорошо Настройка сервера Lighttpd + Apache2

Не ужился я как то с nginx, решил попробовать поэкспериментировать с Lighttpd, но что то все мануалы какие то кривые по нему. Я решил сделать так, настрою сервак сначала на PHP5 + Apache2 + MySQL, а потом просто прикручу ко всему этому Lighttpd. Прикручивать собрался согласно мануалу Lighttpd + Apache.

Итак, у меня есть VDS на который я воткнул ubuntu 10.04 minimal. Дальше заползаю по ssh и устанавливаю редактор nano и файловый менеджер mc, предварительно обновив установщик.

apt-get update
apt-get install nano
apt-get install mc


Домен сразу припарковал на IP сервера, он будет у меня serberg.ru

Ставлю апач:

apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2-suexec

Ставлю php5:

sudo apt-get install php5 php-pear libapache2-mod-php5 libapache2-mod-ruby libapache2-mod-auth-mysql php5-mysql libapache2-mod-python php5-dev php5-cgi php5-mcrypt php5-gd php5-cli php5-common php5-curl php5-idn php5-imagick php5-imap php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl libapache2-mod-evasive

Установка GD:

sudo apt-get install libpng12-dev libjpeg62-dev libxpm-dev libfreetype6-dev

Подключение модулей:

sudo a2enmod php5
sudo a2enmod mod-evasive
sudo a2enmod ssl
sudo a2enmod rewrite
sudo a2enmod suexec
sudo a2enmod include


Редактирую конфиг хостов:

sudo nano /etc/apache2/sites-available/default

Изменяем параметр: AllowOverride None на AllowOverride All

Перезапускаю апач:

sudo service apache2 restart

Ставлю MySQL:

sudo apt-get install mysql-server

Установка phpMyAdmin для апача:

sudo apt-get install phpmyadmin

Проверяю его сразу обращаясь по IP/phpmyadmin - пашет.

Создаю виртуальный хост для апача, предварительно создав нужные папки:

sudo mkdir /var/www/serberg.ru
sudo mkdir /var/www/serberg.ru/www
sudo mkdir /var/www/serberg.ru/log
sudo mkdir /var/www/serberg.ru/sess
sudo mkdir /var/www/serberg.ru/tmp


На папки log и sess даю права 777.

Создаю конфиг виртуального хоста serberg.ru:

sudo nano /etc/apache2/sites-available/serberg.ru

Со следующим содержимым:

<VirtualHost *:80>
ServerName serberg.ru
ServerAlias www.serberg.ru
DocumentRoot /var/www/serberg.ru/www
ServerAdmin admin@serberg.ru
ErrorLog /var/www/serberg.ru/log/apache_error.log
CustomLog /var/www/serberg.ru/log/apache_access.log combined

<Directory /var/www/serberg.ru/www>
Options FollowSymLinks
Options -Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>

php_admin_value upload_tmp_dir /var/www/serberg.ru/tmp
php_admin_value error_log /var/www/serberg.ru/log/php.log
php_admin_value session.save_path /var/www/serberg.ru/sess
</VirtualHost>


Активируем виртуальный хост на сервере

sudo a2ensite serberg.ru

Вношу сайт в хосты сервера:

sudo nano /etc/hosts

в строчку строчку

127.0.0.1 localhost

дописываю через пробел:

serberg.ru www.serberg.ru


Чтобы Apache не ругался, вношу строчку в один из конфигурационных файлов Apache (начиная с версии 11.04 не требуется)

sudo nano /etc/apache2/httpd.conf

Следующее содержимое:

ServerName localhost

Отключаю дефолтный сайт в корневой директории www

sudo a2dissite default

Перезапускаю Apache

sudo service apache2 restart

Обращаюсь на домен - все тип топ, т.е. виртуальный хост пашет.


Дальше шаг 2, в котором я особо не уверен.

Останавливаю апач.

sudo service apache2 stop

Переназначаю порт апача с 80 на 8080.

sudo nano /etc/apache2/ports.conf

Меняю на:

NameVirtualHost *:8080
Listen 8080

<IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule>

<IfModule mod_gnutls.c>
Listen 443
</IfModule>


Для виртуального хоста проделываю тоже самое:

sudo nano /etc/apache2/sites-available/serberg.ru


<VirtualHost *:8080>
ServerName serberg.ru
ServerAlias www.serberg.ru
DocumentRoot /var/www/serberg.ru/www
ServerAdmin admin@serberg.ru
ErrorLog /var/www/serberg.ru/log/apache_error.log
CustomLog /var/www/serberg.ru/log/apache_access.log combined

<Directory /var/www/serberg.ru/www>
Options FollowSymLinks
Options -Indexes
AllowOverride All
Order allow,deny
Allow from all
</Directory>

php_admin_value upload_tmp_dir /var/www/serberg.ru/tmp
php_admin_value error_log /var/www/serberg.ru/log/php.log
php_admin_value session.save_path /var/www/serberg.ru/sess
</VirtualHost>


Устанавливаю Lighttpd

apt-get install lighttpd ruby

Корректирую конфиг Lighttpd:

nano /etc/lighttpd/lighttpd.conf

Кусок с модулями делаю такой:

Код:
server.modules              = (
            "mod_access",
            "mod_alias",
            "mod_accesslog",
            "mod_compress",
           "mod_rewrite",
           "mod_redirect",
           "mod_proxy",
#           "mod_evhost",
#           "mod_usertrack",
#           "mod_rrdtool",
#           "mod_expire",
#           "mod_flv_streaming",
#           "mod_evasive"
)
В самый конец следуя рекомендациям добавляю:

$HTTP["url"] =~ "^.*(html|php|cgi|/|\?|\?.*)$" {
proxy.server = ("" => ( (
"host" => "127.0.0.1",
"port" => 8080 ) ) )
}


+ добавляю кусок конфига для моего виртуального хоста:

$HTTP["host"] =~ "(^|\.)serberg\.ru$" {
server.document-root = "/var/www/serberg.ru/www"
accesslog.filename = "/var/www/serberg.ru/log/access1.log"
server.errorlog = "/var/www/serberg.ru/log/error1.log"
}


Читаю манал, написано:

В конфиге Apache httpd.conf нужно всего лишь изменить следующие строки:

Код:
Listen 127.0.0.1:8080
Port 8080
На этом настройка связки закончена.
Но если это добавить - то старте апач будет ругаться на Port 8080, поэтому ничего не добавлял.

Не забудьте добавить в /etc/rc.conf: lighttpd_enable="YES"

А этого фала вообще не нашел по данному адресу, он лежит в папке init. Надо ли его добавлять вообще ? ХЗ.
Дальше запускаю апач и перезапускаю Lighttpd:

sudo service apache2 start
sudo service lighttpd restart


Обращаюсь на serberg.ru - все работает, но как проверить - работает ли Lighttpd в качестве прокси для отдачи статики ?
  Ответить с цитированием
 
Время генерации страницы 0.09778 секунды с 10 запросами