У меня Apache и hgwebdir.cgi работают нормально через HTTPS (с самозаверяющим сертификатом), я могу просматривать репозитории через браузер и клонировать его локально. Я не знаю, окажет ли это какое-либо влияние, но я переписываю URL, чтобы сделать их красивее:
$ cat .htaccess
Options +ExecCGI
RewriteEngine On
RewriteBase /public
RewriteRule ^$ hgwebdir.cgi [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) hgwebdir.cgi/$1 [QSA,L]
Однако, когда я пытаюсь запустить hg push для отправки изменений обратно, я получаю следующее:
$ hg push
pushing to https://<repository>
searching for changes
http authorization required
realm: Mercurial
user: virtualwolf
password:
remote: ssl required
Apache настроен на перенаправление всех запросов HTTP на HTTPS. Удаленный сервер работает под управлением CentOS с Apache 2.2.3 и Mercurial 1.3.1 (оба установлены через yum
).
Я провел несколько поисков по этой проблеме, самый близкий к которому я пришел ответ - это , но это относится к NGINX, а не к Apache.
Спасибо!