Автор: Брэтт Альтон (Brett Alton)

Сегодня я расскажу, как установить веб-сервер и базу данных, чтобы приступить к разработке.

Мы настроим так называемый локальный LAMP-сервер (что означает Linux, Apache, MySQL и PHP) и немного займёмся PHP-программированием. Это даёт возможность создавать и изменять сайт прямо на своём компьютере, без необходимости покупать место на сервере. Зачем это делать? Многим разработчикам (неважно, работают ли они на организацию или нет) нужен сервер для создания веб-сайтов. Очень часто им приходится писать код, который они загружают на сервер, обновлять страницу в Firefox и надеяться на лучшее. Некоторые современные текстовые редакторы и IDE позволяют редактировать файлы прямо на сервере. Но какой бы способ ни использовался, оба они являются медленными и подвержены обрывам соединения и прочим проблемам. Использование локального сервера избавляет от необходимости такой загрузки, позволяя редактировать весь сайт прямо на вашем компьютере.

Если вы знаете, как настроить перенаправление порта 80 на маршрутизаторе, то сайт можно сделать доступным даже для друзей и родственников. Используя такой способ, можно даже предлагать профессиональное размещение сайтов, но полагаю, что если вы читаете эту статью, то ещё не готовы узнать множество сложных правил обеспечения безопасности, связанных с этим процессом. Запомните это на будущее. Тот способ, который я сейчас покажу, является очень простым (благодаря Ubuntu), но при этом невероятно мощным.

Пользователи и разработчики, которые хотят или должны создавать сайты, используя Windows (возможно, из-за особенностей работы или специальных инструментов, которых нет в Ubuntu), могут по этой инструкции настроить LAMP-сервер на виртуальной машине. Это позволит создать надёжный и безопасный сервер Ubuntu, находясь в Windows. Попробуйте VMWare Server или VirtualBox, для которых существует множество инструкций в Интернете. Проще говоря, нужно установить Ubuntu Server 8.04.2 или 8.10 на виртуальную машину, использовать мой метод создания LAMP-сервера и зайти на него, введя IP-адрес в браузере.

Установка LAMP-сервера в Ubuntu

Установить LAMP-сервер в Ubuntu очень просто. Существует два способа, чтобы сделать это:

Способ 1

sudo tasksel install lamp-server

Заметьте, этот способ появился в Ubuntu 6.10 (Edgy Eft) и работает во всех версиях вплоть до 9.04 (Jaunty Jackalope), который сейчас разрабатывается. В 6.06 (Dapper Drake) сначала нужно просто установить «tasksel» до его запуска.

Что делает эта замечательная программа? Выполнение команды, приведённой выше, равносильно выполнению:

sudo aptitude install apache2 apache2.2-common apache2-mpm-prefork apache2-utils libapache2-mod-php5 
libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl 
libpq5 libwrap0 mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 openssl-blacklist php5-common 
php5-mysql ssl-cert tcpd

Что проще запомнить?

Но, как видите, эта команда устанавливает множество пакетов, которые вам могут не пригодиться для вашего сервера, например Perl, PostgreSQL и библиотеки SSL. Значит ли это, что они вредны для сервера? Вовсе нет. Всё зависит от того, насколько избыточный вам нужен сервер, и работу скольких пакетов вы хотите поддерживать. Но пока команды «sudo tasksel install lamp-server» будет более чем достаточно для новичков и тех, кому нужен быстро работающий LAMP-сервер.

Способ 2

Этот способ похож на первый, но позволяет выбирать, какие пакеты устанавливать. Для большинства, чтобы установить LAMP-сервер, этого будет достаточно:

sudo aptitude install apache2 libapache2-mod-php5 mysql-server php5

Проблема здесь в том, что вы не сможете настроить процесс установки. Но всем ли это нужно? Вряд ли, но когда вы начнёте использовать Wordpress, MediaWiki, Drupal или другой серьёзный программный продукт, вам могут понадобиться определённые библиотеки. Не беспокойтесь, о нужных библиотеках вы узнаете попутно.

Итак, представьте, что вы пишете программу на PHP и возникла необходимость в библиотеках для работы с картинками, безопасными соединениями или командной строкой (чтобы использовать PHP не только через Firefox, но и через терминал), тогда вам нужно доустановить пакеты на ваш LAMP-сервер.

Поэтому я установлю следующие пакеты на свой LAMP-сервер:

sudo aptitude install apache2 libapache2-mod-php5 mysql-client-5.0 mysql-server-5.0 
php5 php5-cli php5-curl php5-gd php5-imagick php5-json php5-mcrypt phpmyadmin php5-mysql

Заметьте, что я включил «phpmyadmin». Этот инструмент, описанный в моей первой статье, является отличным средством управления MySQL сервером. Сегодня базами данных мы заниматься не будем, просто запомните, с какой простотой всё это устанавливается. Чтобы попасть в phpMyAdmin, зайдите в браузере на http://localhost/phpmyadmin, введите имя пользователя «root» и пароль, выбранный при установке.

Не бойтесь настраивать, смешивать и изучать инструменты!

Тестирование локальной установки

После успешного выполнения любого из способов установки LAMP-сервера, откройте Firefox (Приложения > Интернет > Firefox Web Browser) и зайдите на:

http://localhost

Вы должны увидеть простую надпись «It works!», написанную чёрным по белому. Если этих слов вы не видите, прямым ходом идите в наш раздел в Ubuntu Forums за помощью.

Куда помещать файлы?

Сейчас Apache читает файлы из директории /var/www/, о которой вы, вероятно, ничего не знаете. Есть два способа изменить это:

  1. Удалить /var/www/ и создать ссылку (ярлык) на папку, расположенную у вас в домашнем каталоге или на рабочем столе.
  2. Отредактировать файл конфигурации Apache, заменив все упоминания о /var/www/ папкой на рабочем столе или в домашнем каталоге.

В первом случае просто запустите в терминале:

sudo rm -r /var/www && mkdir $HOME/Desktop/localhost && sudo ln -s $HOME/Desktop/localhost/ /var/www

Здесь сначала удаляется папка /var/www/, затем создаётся папка $HOME/Рабочий\ стол/localhost (таким образом, если имя моего пользователя - «ivan», то это создаст папку /home/ivan/Рабочий\ стол/localhost), и, наконец, создаётся ярлык с папки $HOME/Рабочий\ стол на папку /var/www/.

Это заставит Apache верить, что файлы на самом деле лежат в /var/www.

Заметьте, что если вам нужна папка, расположенная не на рабочем столе, то просто измените строку выше, указав, где вы хотите хранить файлы разработки. Например, измените $HOME/Рабочий\ стол/localhost (оба раза) на $HOME/Документы/www (или любую другую папку).

Во втором случае нужно отредактировать файл «/etc/apache2/sites-available/default», заменив «/var/www/» именем выбранной папки, а затем перезапустить Apache:

sudo /etc/init.d/apache2 reload

После любого способа нужно зайти в Firefox на http://localhost ещё раз, чтобы убедиться, что всё работает. Сейчас вы должны просто увидеть содержимое выбранной директории (т.е. $HOME/Рабочий\ стол/localhost), которая скорее всего будет пустой, и не будет выведено ничего.

Brett Alton - энтузиаст Ubuntu, технический специалист и разработчик ПО из Торонто, Канада