Сначала я опишу мои настройки, затем мою проблему и, наконец, мой вопрос для решения.
У меня есть решение для внешнего DNS-сервера (не использующее DNS в моем UBUNTU), где я контролирую все свои первичные DNS и т. Д. У меня есть записи A, установленные следующим образом:
localhost.itaportalen.dk 127.0.0.1 43200
itaportalen.dk 5.196.14.205 43200
Кроме того, у меня есть CNAME
:
.itaportalen.dk itaportalen.dk 43200
У меня есть сервер UBUNTU с запущенным apache2, и мой сайт находится в /var/www/html
- Это работает как очарование.
Я установил MySQL
и VSFTPD
, и это тоже хорошо работает.
Моя проблема в том, что я хотел бы запустить многопользовательский сайт, и у всех пользователей должен быть от subdomain
до itaportalen.dk
. Когда я создаю пользователя, то есть «тестирую», у этого пользователя должен быть домашний каталог в соответствии с поддоменом test.itaportalen.dk
с доступом по FTP только к этой папке (и подкаталогам, которые может создать пользователь).
У меня следующие вопросы:
Где мне разместить папку для субдомена test.itaportalen.dk
, чтобы CNAME
указывал прямо на эту папку? Я не могу заставить эту работу работать на UBUNTU и APACHE2
У меня есть chrooted
моих пользователей, так что они видят только свою домашнюю папку (в данном случае поддомен), как правильно предоставить им доступ к RW, так что вы можете загружать файлы на свои сайты?
Я знаю, что это довольно простой материал, но я не могу заставить его работать в этой установке UBUNTU.
Апачем по умолчанию установка для отдельных пользователей, чтобы иметь их собственный URL, все, что необходимо сделать, включают его:
sudo a2enmod userdir
Затем говорят, что пользователь test01 доступ был бы через itaportalen.dk/~test01
, и их каталог будет /home/test01/public_html
. Однако я заключаю, что Вы не хотите делать это тот путь.
, Например, скажите, что имена пользователей являются test01, test02, test03, test04. Добавьте записи (или записи CNAME, если Вы предпочитаете) в Ваш файл зоны DNS:
epson-wp2 IN A 192.168.111.111
s15 IN A 192.168.111.112
bla IN A 192.168.111.112
test01 IN A 192.168.111.112
test02 IN A 192.168.111.112
test03 IN A 192.168.111.112
test04 IN A 192.168.111.112
s16 IN A 192.168.111.113
Все указывающие на тот же IP-адрес. В Вашем случае 5.196.14.205. Затем в /etc/apache2/sites-available
Вы захотите создать 4 новых файла. Запустите путем копирования файла по умолчанию:
sudo cp 000-default.conf test01.conf
Редактирование новый файл как так:
<VirtualHost *:80>
ServerName test01.smythies.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/test01
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/html/test01>
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
...
, Где я принял решение иметь каждый каталог под /var/www/html
. Вы делаете то, что Вы хотите. Однако Вы, возможно, должны были бы отредактировать /etc/apache2/apache2.conf
, в зависимости от того, где Вы определяете местоположение каталогов. Повторитесь для других пользователей. Затем включите каждый виртуальный хост:
sudo a2ensite test01
sudo a2ensite test02
sudo a2ensite test03
sudo a2ensite test04
Перезапуск:
sudo service apache2 restart
я сделал это на своем внутреннем тестовом сервере, и он работал как ожидалось. Я только использовал Ubuntu Serverguide как ссылка.