Skip to content

21 Январь 2012

209

Ubuntu Linux Apache + PHP + Настройка

Ubuntu apache php

После легкой установки сладкой парочки одной командой, речь пойдет о несколько более интересных вещах. А именно — о настройке веб сервера так, чтобы было удобно управлять несколькими сайтами.  :cool:

:!:  Установка:

  1. apt-get install apache2 libapache2-mod-php5 php5
  2. Идем в /var/www, удаляем index.html и создаем новый, index.php со следующим содержимым:
    <?php phpinfo(); ?>
  3. /etc/init.d/apache2 restart
  4. Проверяем работу веб-сервера, заходим на сайт по IP. Если видим информацию о php — все прошло отлично.

:!:  Настройка apache2

Настраивать веб сервер будем так, чтобы в итоге получить две важные вещи:

  • Возможность легко создавать новые сайты/домены
  • Возможность редактировать файлы сайтов через WinSCP

  1. Создаем нового пользователя:
    useradd -m -s/bin/bash webmaster
    passwd webmaster 
  2. Редактируем конфиг apache ( /etc/apache2/apache2.conf), ищем строки:
    # These need to be set in /etc/apache2/envvars
    User ${APACHE_RUN_USER}
    Group ${APACHE_RUN_GROUP}

    Меняем на:

    # These need to be set in /etc/apache2/envvars
    User webmaster
    Group ${APACHE_RUN_GROUP}
  3. В папке /etc/apache2/sites-available, создаем новый файл, название будет соответствовать домену сайта ( site.ru ), со следующим содержанием:
    <VirtualHost *:80>
        ServerName site.ru
        ServerAlias *.site.ru
    
        DocumentRoot /home/webmaster/site.ru/www
    
        ScriptAlias /cgi/ "/home/webmaster/site.ru/cgi/"
        ScriptAlias /cgi-bin/ "/home/webmaster/site.ru/cgi/"
    
        ErrorLog /home/webmaster/site.ru/errors.log
        CustomLog /home/webmaster/site.ru/custom.log combined
    </VirtualHost>
  4. Создаем соответствующую структуру /home/webmaster/site.ru/www
  5. Копируем туда index.php из /var/www, после чего меняем /var/www/index.php как нравится. Это заглушка при обращении к серверу без домена.
  6. a2ensite site.ru
  7. /etc/init.d/apache2 restart
  8. Проверяем работу сайта через домен http://site.ru/, должна быть информация о php.

Вот все и готово. Добавление новых доменов/поддоменов/сайтов осуществляется аналогично. Теперь можно заливать сайт и работать с ним через WinSCP от пользователя webmaster.


ВНИМАНИЕ!

Для корректной работы, владельцем всех файлов сайта должен быть пользователь webmaster! Не забывайте изменять права у файлов, которые создаете от другого пользователя. В массовом изменении прав поможет эта статья.