|
|
Локальный сервер Информация, мануалы и вопросы по локальным серверам |
|
Опции темы | Поиск в этой теме |
08.02.2013, 17:23 Вверх | #1 | |||
Коварный тип
|
Настройка сервера 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. Надо ли его добавлять вообще ? ХЗ. sudo service apache2 start sudo service lighttpd restart Обращаюсь на serberg.ru - все работает, но как проверить - работает ли Lighttpd в качестве прокси для отдачи статики ? |
|||