PHP 通过 shell_exec 使用 SVN 命令连接失败
配置:
- PHP版本:PHP 5.4.45
- Linux版本:Debian 3.16.43-2+deb8u3 (2017-08-15) x86_64
问题描述:
- 机器没有配置svn扩展,想使用shell_exec命令来执行svn指令
- 执行svn list 报错无法连接,用户名和密码参数都有
部分代码如下
$authCommand = ' --username ' . $USER . ' --password ' . $PASS . ' --no-auth-cache';
$cmd = "svn list " . $SVN_URL . $authCommand . " 2>&1";
$res = @shell_exec($cmd);
浏览器返回如下
svn: E170013: Unable to connect to a repository at URL 'https://{svn_address}'↵svn: E230001: Server SSL certificate verification failed: issuer is not trusted
如果使用上面的$cmd直接在Linux命令行执行可以得到预期结果。
使用了popen发现依然不行,请有思路者帮忙看看问题,THANKS。
报错信息都告诉你了,需要配置 SSL 证书认证,你需要使用shell实现https登录。
@pardon110 麻烦详细讲一下,知道是认证失败了,但是为什么会失败?使用shell实现https登陆是什么意思,我在对应机器的控制台尝试登陆过了,是可以访问的。