Назад | Перейти на главную страницу

Символьная ссылка на каталог пользователей gitolite на доступные сайты Apache

У меня есть сервер разработки gitolite, и я пытаюсь автоматизировать создание новых виртуальных хостов.

Я решил, что вместо того, чтобы пытаться заставить пользователя gitolite (не root) создавать новые файлы конфигурации в / etc / apache2 / sites-available, я бы сделал символическую ссылку на каталог / home / gitolite / sites-available.

Я могу запустить это:

sudo ln -s /home/gitolite/sites-available/* /etc/apache2/sites-available/

а затем я могу видеть сайты в каталоге с символическими ссылками

 default  symlinkedsite.com  nonsymlnkedsite.com

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

Я изначально пробовал это

sudo ln -s /home/gitolite/sites-available /etc/apache2/sites-available/

который создает символическую ссылку сайты-доступные каталог в / etc / sites-available

Но если я запустил a2ensite, он не сможет перейти по этой символической ссылке.

Я знаю, что для того, чтобы виртуальный хост apache2 мог использовать символические ссылки, необходимо включить следующие символические ссылки. Есть ли аналогичный вариант для каталога конфигурации apache2 sites-available?

Я просмотрел apache2.conf, но не увидел ничего очевидного.

Вы должны добавить строку include в свой основной httpd.conf (или apache2.conf)

Вероятно, в вашей конфигурации уже есть что-то похожее:

# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.

# Include generic snippets of statements
Include /etc/apache2/conf.d/

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

вы хотите добавить:

# Include gitolite files
Include /home/gitolite/sites-available/

Это скажет httpd включить файлы .conf в этот каталог, конечно, вам также придется предоставить пользователю apache разрешения на чтение в эту папку.

Что ж, я немного перебрал его, полностью заменив исходный каталог с доступными сайтами символической ссылкой на тот, который мне нужен.

@Zypher - я думаю, мне нужен a2ensite, не так ли? Чтобы вручную создать символическую ссылку на сайты с поддержкой, мне нужно было бы дать gitolite какие-то привилегии, вместо этого я просто добавил / usr / sbin / a2ensite в visudo