Mercurial: «remote: ssl требуется» даже при отправке в репозиторий HTTPS - PullRequest
4 голосов
/ 16 апреля 2011

У меня 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.

Спасибо!

Ответы [ 3 ]

9 голосов
/ 20 марта 2013

Я решил ту же проблему, запустив сервер hg следующим образом:

hg serve --config web.push_ssl = Нет --config "web.allow_push = *"

2 голосов
/ 09 декабря 2014

вы можете просто добавить эти строки в ваш репозиторий cetrale, куда вы хотите отправить

[web]
push_ssl=False
allow_push=*

Само собой разумеется, это довольно небезопасно, но если вы работаете в хорошей защищенной локальной сети, у вас хороший межсетевой экран и вы доверяете всем в своей локальной сети, это вполне нормально.

2 голосов
/ 20 мая 2011

Получается, что проблема была такой же, как описано здесь . Это не имело ничего общего с Mercurial, но было странностью на стороне Apache.

Мне пришлось скопировать директивы SSLEngine On и связанные с ними SSLProtocol, SSLCipherSuite, SSLCertificateFile и SSLCertificateKeyFile из моего отдельного файла конфигурации Apache "Включить SSL" в мой файл виртуального хоста Mercurial, даже если все остальное работало довольно счастливо через HTTPS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...