В настоящее время я размещаю собственные git-репозитории для своих частных проектов. Для этого я использую Apache и стандартный git http-backend.
Теперь доступ к репо можно получить по следующему URL-адресу:
http://vcs.myserver.lc/git/Repo.git
С помощью этого URL-адреса я могу отправлять, извлекать и клонировать в / из этого репо, используя мерзавец. Однако открытие этого URL-адреса в браузере просто дает мне пустую страницу, и теперь я ищу способ избежать этого.
Вместо этого я бы хотел, чтобы Apache представил страницу с некоторой информацией, например:
Это не веб-страница, это git-репо. Вы можете клонировать это репо, используя
git clone [URL]
...
Было бы хорошо, если бы [URL]
будет заменен текущим URL-адресом (например, с использованием PHP), но простой HTML тоже подойдет.
Я знаю, что это возможно, так как делает то же самое со своими репозиториями.
Мне удалось сделать нечто подобное для vcs.myserver.lc
-домен, указав DocumentRoot
в файле VHost-config:
DocumentRoot /srv/http/vcs/
На этом пути я поставил простой index.html
-файл с основными инструкциями.
Итак, есть ли у них какой-либо простой способ показать информационную сторону для браузеров, в то время как git-client все еще может работать с репо? Могу ли я перенаправить браузеры на конкретный информационный сайт?
Да, на самом деле это относительно просто. Вам нужно указать apache, чтобы он использовал git-http-backend только для вещей, которые интересуют git, то есть всего, что соответствует ^.*/(HEAD|info/refs|objects/info/.*|git-(upload|receive)-pack)$