>백엔드 개발 >PHP 튜토리얼 >通过php的popen函数来执行一个简单svn命令遇到的问题

通过php的popen函数来执行一个简单svn命令遇到的问题

WBOY
WBOY원래의
2016-06-23 14:17:44916검색

header("Cache-Control:no-cache,must-revalidate");$handle = popen('svnserve --version','r'); $read = stream_get_contents($handle);echo "<pre class="brush:php;toolbar:false">";printf($read);echo "
"; pclose($handle);
因为我的项目服务器和SVN 服务器不在一个服务器上,所以我不能用hooks来实现,只能通过这种方式

这个在服务器上本地都能执行。正常显示。

但是换成
$handle = popen('svn up /www/web01 --username xxx --password xxx', 'r');
就不能执行了(但是在本地OK)

服务器上直接执行:
svn up /www/web01 --username xxx --password xxx
也OK


回复讨论(解决方案)

在执行查看版本号的时候没问题,但是在更新的时候就出现了问题。是更新的时候需要权限吗?

权限问题
php程序执行是www服务器的权限和环境变量
环境变量,权限,仔细检查下就ok 大神,给我的答案。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.