UBUNTOMANIA

Ubuntu - Linux для людей

Friday, Dec 04th

Изменен:10:42:28 AM GMT

Вы здесь: Серверы Web Установка и настройка LAMP

Установка и настройка LAMP

(10 Голосов)

lamp

LAMP — акроним, обозначающий набор (комплекс) серверного программного обеспечения, широко используемый во Всемирной паутине. LAMP назван по первым буквам входящих в его состав компонентов: Linux — операционная система Linux; Apache — веб-сервер; MySQL — СУБД; PHP — язык программирования, используемый для создания веб-приложений (помимо PHP могут подразумеваться другие языки, такие как Perl и Python).

Наш сервер LAMP базируется на Ubuntu Server. Эта конфигурация успешно работает на реальных серверах Ubuntu версий от 10.04 до 11.10.

Обновим список репозиториев сервера

sudo apt-get update

Установка Apache

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

Введем в браузере

http://hostname/

Где hostname - имя или ip адрес нашего хоста. На локальной машине это будет localhost. И если увидим надпись

It works!

Значит все прошло удачно и сервер запустился.

Установка PHP

sudo apt-get install php5 php-doc 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 mod-evasive ssl rewrite suexec include

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

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

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

Проверим функциональность php

Создадим каталог, и тестовый файл index.php

sudo mkdir /var/www/php
sudo nano /var/www/php/index.php

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

<?php
phpinfo();
?>

Сохраняем файл, и проверяем в браузере:

http://hostname/php/

Должна вывестись служебная информация по PHP

Настоятельно рекомендуем либо удалить этот файл с сервера, либо защитить его паролем.

Установка MySQL сервера

sudo apt-get install mysql-server

В процессе установки, будет запрошен ввод пароля для root MySql сервера.

Установка phpMyAdmin

Во время установки выберем apache2

sudo apt-get install phpmyadmin

В процессе установки, будет запрошен ввод пароля root MySQL
Следующим шагом, задаём пароль для phpMyAdmin

Создание виртуального хоста для нашего сайта

Создадим структуру каталогов под наш будущий сайт

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

Создание конфигурационного файла виртуального хоста нашего сайта

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

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

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

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

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

Активируем сайт на сервере

sudo a2ensite sitename.ru

Внесем имя сайта в список хостов сервера

sudo nano /etc/hosts

Найдем строчку

127.0.0.1 localhost

И допишем в неё через пробел

sitename.ru www.sitename.ru

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

sudo nano /etc/apache2/httpd.conf

Добавим следующее содержимое:

ServerName localhost

Закрываем и сохраняем.

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

sudo service apache2 restart

Для высоконагруженных серверов рекомендуем установить eAccelerator и Zend Guard Loader, а также, защитить сервер от DDoS атак.

Share/Save/Bookmark