Недавно мы создали несколько приложений, которые работают через web-интерфейс. Написано все на php, поэтому необходимо было установить и настроить на сервере php, apache и mysql. Решено было все поставить на компьютер с Ubuntu, на который недавно был установлен Jabber-сервер.
Итак, устанавливаем php, apache и mysql на ubuntu:

  1. Ставим php: sudo apt-get install php5
  2. Ставим apache: sudo apt-get install apache2
  3. Ставим mysql: sudo apt-get install mysql-server-5.0
  4. Ставим phpmyadmin: sudo apt-get install phpmyadmin
    При установке phpmyadmin в окне установки необходимо выбрать пункт, указывающий на использование apache2!!!

Все! Запускаем браузер, набираем в адресной строе http://localhost/ и видим “It’s work!”, что означаем, что мы все сделали правильно :)
Файлы веб-сервера лежат тут /var/www/
Включаем использование .htaccess:

  1. В терминале вводим sudo a2enmod rewrite
  2. Редактируем /etc/apache2/sites-available/default gksudo gedit /etc/apache2/sites-available/default – меняем “AllowOverride none” на “AllowOverride all”
  3. Перезапускаем apache sudo /etc/init.d/apache2 restart

Для того, чтобы запустить phpmyadmin в браузере командой http://localhost/phpmyadmin открываем терминал и выполняем команду: ln -s /usr/share/phpmyadmin/ /var/www
Для того, чтобы использовать директорию для хранения файлов веб-сервера, отличную от /var/www настраиваем виртуальные узлы:

  1. Создаем в нужном нам месте каталог для файлов веб-сервера, например /home/<user>/www
  2. Создаем копию файла настройки виртуального узла, чтобы внести в него изменения sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/new
  3. Редактируем наш файл настроек виртуального узла: gksudo gedit /etc/apache2/sites-available/new
    Указываем новое местоположение директории веб-сервера заменой <Directory /var/www/> на <Directory /home/<user>/www/> и сохраняем изменения.
  4. Отключаем виртуальный узел по умолчанию и включаем наш новый узел new введя в терминале команды sudo a2dissite default && sudo a2ensite mysite
  5. Перезапускаем apache sudo /etc/init.d/apache2 restart

Все, по адресу http://localhost/phpmyadmin отображается содержимое /home/<user>/www/
Для тестирования нескольких проектов на веб-сервере мы настроили виртуальные хосты:

  1. В каталоге /etc/apache2/sites-available/ создаем файл vhosts.conf
  2. Открываем его в редакторе и пишем

    <VirtualHost *:80>
    ServerName test1.ru
    ServerAlias www.test1.ru
    DocumentRoot /home/<user>/www/test1.ru
    </VirtualHost>
    <VirtualHost *:80>
    ServerName test2.ru
    ServerAlias www.test2.ru
    DocumentRoot /home/<user>/www/test2.ru
    </VirtualHost>
  3. Создаем каталоги /home/<user>/www/test1.ru и /home/<user>/www/test2.ru
  4. Редактируем /etc/hosts gksudo gedit /etc/hosts и вписываем туда следующие строки
    127.0.0.1 test1.ru
    127.0.0.1 test2.ru
  5. Активируем vhosts.conf в apache:
    cd /etc/apache2/sites-enabled/sudo
    ln -s ../sites-available/vhosts.conf
    и перегружаем apache :sudo /etc/init.d/apache2 restart

В адресной строке браузера набираем http://test1.ru и http://test2.ru, и видим содержимое каталогов /home/<user>/www/test1.ru и /home/<user>/www/test2.ru соответственно