Vir*_*olf 4 apache ssl mercurial
我通过HTTPS运行Apache和hgwebdir.cgi(带有自签名证书),我可以通过浏览器查看存储库并在本地克隆它.我不知道它是否有任何影响,但我正在重写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]
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试运行hg push来发送更改时,我得到了这个:
$ hg push
pushing to https://<repository>
searching for changes
http authorization required
realm: Mercurial
user: virtualwolf
password:
remote: ssl required
Run Code Online (Sandbox Code Playgroud)
Apache设置为将HTTP上的所有请求重定向到HTTPS.远程服务器运行CentOS,Apache 2.2.3和Mercurial 1.3.1(都通过安装yum
).
我已经做了很多关于这个问题的搜索,最接近我得到答案的是这个,但它指的是NGINX而不是Apache.
谢谢!
所以事实证明问题与此处描述的相同。这与 Mercurial 没有直接关系,但对 Apache 来说却很奇怪。
我必须将SSLEngine On
相关的SSLProtocol
、SSLCipherSuite
、SSLCertificateFile
、 和SSLCertificateKeyFile
指令从单独的“启用 SSL”Apache 配置文件复制到我的 Mercurial 虚拟主机文件中,尽管其他一切都通过 HTTPS 正常运行。
归档时间: |
|
查看次数: |
4770 次 |
最近记录: |