0
Livejournal
Ранее было написано как установить и настроить Apache, здесь -
настройка Apache для работы нескольких сайтов с разными юзерами.
* Проверка того, что апач работает:

# ps ax | grep httpd

Если Apache запущен, то Вы увидите подобные строки:

53092 ?? I 0:00,02 /usr/local/sbin/httpd -DNOHTTPACCEPT
53258 ?? I 0:00,02 /usr/local/sbin/httpd -DNOHTTPACCEPT

пуск и стоп Apache:

/usr/local/etc/rc.d/apache22 start

Команда для остановки Apache

/usr/local/etc/rc.d/apache22 stop

перезапуск Apache

/usr/local/etc/rc.d/apache22 restart

* Проверка наличия настроек для виртуалхостов в конфигурации Apache

Для того, чтобы Apache мог работать с несколькими сайтами, он должен быть сконфигурирован для работы с виртуалхостами. Для этого необходимо проверить:

в /usr/local/etc/apache22/httpd.conf должны присутствовать и быть незакомментированными следующие строки

Include etc/apache22/extra/httpd-vhosts.conf

Include etc/apache22/Includes/*.conf

В файле /usr/local/etc/apache22/extra/httpd-vhosts.conf должна остаться незакомментированной только строка

NameVirtualHost *:80

* Добавление нового сайта на сервер

Исходные данные:
логин пользователя: newuser
домашняя директория: /home/newuser
доменное имя сайта: newsite.ru
подразумевается, что у пользователя будет больше одного сайта

1. Добавляем нового пользователя на сервере как написано здесь
2. Чтобы пользователь при заходе на сервер через ftp попадал в свою домашнюю директорию, редактируем файл /etc/ftpchroot, если файл отсутствует, то создаем. Добавляем туда строку:

newuser /home/newuser

3. Создаем директорию /home/newuser/newsite.ru и в ней три директории: cgi-bin (для файлов perl), htdocs (для html-файлов) и logs (для логов Apache от сайта)

mkdir -p /home/newuser/newsite.ru/cgi-bin
mkdir /home/newuser/newsite.ru/htdocs
mkdir /home/newuser/newsite.ru/logs

4. Задаем для директории /home/newuser/newsite.ru и всех её поддиректорий владельца newuser, группу newuser и права доступа 0755:

chown -R newuser:newuser /home/newuser/newsite.ru
chmod -R 0755 /home/newuser/newsite.ru

5. Настраиваем конфигурацию виртуалхоста в Apache.
Создаем или редактируем файл /usr/local/etc/apache22/Includes/newuser.conf - в этом файле будут храниться конфигурации виртуалхостов для всех сайтов пользователя newuser. Как вариант, можно использовать отдельный файл для каждого сайта, в этом случае в качестве названия файла целесообразно использовать доменное имя сайта, в нашем случае это /usr/local/etc/apache22/Includes/newsite.ru.conf . Создаем конфигурацию виртуалхоста для нашего сайта и записываем её в newuser.conf:

ServerName newsite.ru
ServerAlias www.newsite.ru
ServerAdmin support@newsite.ru

SuexecUserGroup newuser newuser
AddHandler cgi-script .pl

DocumentRoot /home/newuser/newsite.ru/htdocs
home/newuser/newsite.ru/htdocs>
Options Includes FollowSymLinks Indexes

AllowOverride All
Order allow,deny
allow from all
DirectoryIndex index.html index.shtml

ScriptAlias /cgi-bin/ "/home/newuser/newsite.ru/cgi-bin/"
home/newuser/newsite.ru/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all

ErrorLog "|/usr/local/sbin/rotatelogs /home/newuser/newsite.ru/logs/%Y-%m-%d-error 86400"
CustomLog "|/usr/local/sbin/rotatelogs /home/newuser/newsite.ru/logs/%Y-%m-%d-access 86400" combined

6. Перезапускаем Apache.
7. Для добавления пользователю нового сайта, повторяем п.п.3-6, используя вместо newsite.ru доменное имя нового сайта.

Оригинал записи и комментарии на LiveInternet.ru

Также опубликовано в:

Написать комментарий

вернуться к странице