Установка Lighttpd PHP Mysql CentOS 5.5
Автор: admin Раздел: Как настроить CentOS
Установка Lighttpd + PHP + Mysql + CentOS 5.5
lighttpd - веб-сервер, разработанный с расчетом на скорость и безопасность, и соблюдение стандартов. В Lighttpd есть поддержка сжатия данных выдали «на лету», HTTP-аутентификации переписывать URL, SSL и автоматизированной балансировки нагрузки (нагрузка может быть автоматически распределяются между несколькими серверыми под управлением Lighttpd). Веб-сервер также поддерживает CGI, SCGI, FastCGI и AJP (только в настоящее время разрабатывается версия 1.5), позволяя приложения, написанные на любом языке программирования. Излишне говорить Lighttpd достойную замену тяжелым Apache (не в обиду). Специально для тех, кто имеет хостинг на VPS / VDS, ,что значительно экономит ресурсы серверы. Итак приступим установке связки lighttpd + php + mysql. Все это хозяйство я поставля на ОС CentOS 5.5. Делаем следующее: [-hide-]1. Подключаем и устанавливаем репозиторий Epel. Он нам понадобится для установки lighttpd и lighttpd-fastcgi.В зависимости от вашей системы это либо x86_64 или i386. x86_64 # rpm -ihv http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm i386 # rpm -ihv http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm 2. Установим Mysql # yum install mysql mysql-server 3. Добавим службу в автозагрузку и запустим службу # chkconfig –level 3 mysqld on # service mysqld start 4. Выставим пароль рута # mysqladmin -u root password ‘новый-пароль’ 5. Установим Lighttpd и добавим службу в автозагрузку и после запустим службу # yum install lighttpd lighttpd-fastcgi # chkconfig –level 3 lighttpd on # service lighttpd start 6. Установим php и его модули. Устанавливать я буду стандартный для CentOS 5 – php-5.1. (Статья как установить версию 5.2.x, здесь!) # yum install php-cli php-mysql php-gd php-pear php-xml php-xmlrpc php-pdo php-mcrypt 7. Настраиваем PHP и Lighttpd для работы с ним. Открываем php.ini # vi /etc/php.ini В конец файлика добавляем следующую строчеку cgi.fix_pathinfo = 1 Теперь сконфигурируем Lighttpd # vi /etc/lighttpd/lighttpd.conf Раскомментируем необходимые нам модули server.modules = ( «mod_rewrite», «mod_redirect», «mod_alias», «mod_access», «mod_setenv», «mod_fastcgi», «mod_accesslog» ) Прописываем наши хосты и указываем путь до document-root $HTTP["host"] == «www.test.ru» { server.document-root = «/home/www/test.ru/» } $HTTP["host"] == «test.ru» { server.document-root = «/home/www/test.ru/» } Далее находите 212 строчку – fastcgi module и раскомментируйте строчки с 215 по 222. ![]() 8. Создаём необходимые папки и назначаем права. # mkdir /var/run/lighttpd (если нет, то создаем) # chown lighttpd.lighttpd /var/run/lighttpd # chmod 755 /var/run/lighttpd # mkdir -p /home/www/test.ru/ 9. Запускаем lighttpd # service lighttpd start 10. Проверим работоспособность PHP. (по умолчанию root-директория Lighttpd – /var/www/lighttpd) Создадим директории test.ru новый файлик: # vi /home/www/test.ru/test.php Добавим в него следующую строчку: Открываем браузер и набираем – hhtp://адрес серверы/test.php Это была настройка lighttpd с учетом одного сайта. Теперь я хотел бы рассмотреть настройку виртуальных хостов. Итак допустим у вас два хоста – site1.ru и site2.ru. 1. Создаём необходимые директории. Создаём директории для сайтов # mkdir -p /home/www/site1 # mkdir -p /home/www/site2 Создаём директории для логов # mkdir /var/log/lighttpd/site1 # mkdir /var/log/lighttpd/site2 2. Выставляем права # chown -R lighttpd:lighttpd /home/www/ # chown -R lighttpd:lighttpd /var/log/lighttpd 3. Отредактируем конфигурационный файлик lighttpd # vi /etc/lighttpd/lighttpd.conf Добавляем следующии строчки: Для хоста – site1.ru $HTTP["host"] =~ "(^|\.)site1\.ru$" { server.document-root = "/home/www/site1" server.errorlog = "/var/log/lighttpd/site1/error.log" accesslog.filename = "/var/log/lighttpd/site1/access.log" server.error-handler-404 = "/e404.php" } Для хоста – site2.ru $HTTP["host"] =~ "(^|\.)site2\.ru$" { server.document-root = "/home/www/site2" server.errorlog = "/var/log/lighttpd/site2/error.log" accesslog.filename = "/var/log/lighttpd/site2/access.log" server.error-handler-404 = "/e404.php" } Рассмотрим синтаксис: $HTTP["host"]… – данная строчка поддерживает запросы как к www.site1.ru, так и site1.ru. server.document-root – местонахождения файликов веб-серверы lighttpd. server.errorlog – где лежат логи об ошибках. accesslog.filename – где лежат логи об успешных операциях. server.error-handler-404 – местонахождения файлика с 404 ошибкой. Редирект. Для редиректа раскомментируем и добавим в конфигурационном файлике Lighttpd, следующии строчки: server.modules = ( "mod_rewrite", "mod_redirect", Редирект с www.test.ru >>> test.ru (без www) $HTTP["host"] =~ "^www\.(.*)" { url.redirect = ( "^/(.*)" => "http://%1/$1" ) } Обратный редирект с test.ru >>> www.test.ru (принудительная подстановка www) $HTTP["host"] =~ "^test\.ru$" { url.redirect = ( "^/(.*)" => "http://www.test.ru/$1" ) } Для редиректа всех доменов без www на www, пишем так: $HTTP["host"] =~ "^([^.]+\.[^.]+)$" { url.redirect = ( ".*" => "http://www.%1" ) }[-hide-] |