php web 方式操作svn
2012-09-19 15:11
176 查看
php调用shell脚本的svnup.php文件内容:
<?
set_time_limit(0);
//$output = array();
$ret = 0;
exec("/usr/bin/sudo
/data0/shell/svnvp.sh", $output, $ret);
echo "Result:{$ret}";
print_r($output);
?>
/data0/shell/svnvp.sh是更新的脚本,主要内容是svn up。
还需要修改sudo配置文件,直接键如visudo命令编辑配置文件:
1. 注释Defaults requiretty
Defaults requiretty修改为 #Defaults requiretty, 表示不需要控制终端。
否则会出现sudo: sorry, you must have a tty to run sudo
2. 增加行 Defaults visiblepw
否则会出现 sudo: no tty present and no askpass program specified
我发现sudo-1.6.9p17-5.el5是不支持这个参数的,sudo-1.7.2p1-10.el5支持。
3. 赋予www用户执行svn权限
如,增加行:www ALL=(ALL) NOPASSWD: /data0/shell/svnvp.sh
注:NOPASSWD可以使在命令执行时不需要交互输入www 用户的密码
www用户为nginx或apache的运行用户
4.重启nginx或apache,让用户重新获得权限。
<?
set_time_limit(0);
//$output = array();
$ret = 0;
exec("/usr/bin/sudo
/data0/shell/svnvp.sh", $output, $ret);
echo "Result:{$ret}";
print_r($output);
?>
/data0/shell/svnvp.sh是更新的脚本,主要内容是svn up。
还需要修改sudo配置文件,直接键如visudo命令编辑配置文件:
1. 注释Defaults requiretty
Defaults requiretty修改为 #Defaults requiretty, 表示不需要控制终端。
否则会出现sudo: sorry, you must have a tty to run sudo
2. 增加行 Defaults visiblepw
否则会出现 sudo: no tty present and no askpass program specified
我发现sudo-1.6.9p17-5.el5是不支持这个参数的,sudo-1.7.2p1-10.el5支持。
3. 赋予www用户执行svn权限
如,增加行:www ALL=(ALL) NOPASSWD: /data0/shell/svnvp.sh
注:NOPASSWD可以使在命令执行时不需要交互输入www 用户的密码
www用户为nginx或apache的运行用户
4.重启nginx或apache,让用户重新获得权限。
相关文章推荐
- 利用NetBeans的Visual Web Pack用拖拉方式建立操作数据库的示例
- PHP面向对象方式操作数据库(扩展增强库MySQLi)
- php 操作mysql 获取select 结果的几种方式
- PHP使用数据库永久连接方式(mysql_pconnect)操作MySQL的是与非
- PHP使用数据库永久连接方式操作MySQL的是与非
- PHP使用数据库永久连接方式操作MySQL的是与非
- PHP使用数据库永久连接方式操作MySQL的是与非
- 使用 PHP 构建语义 Web CRUD 操作
- php mysqli和pdo两种方式操作msyql的基本操作
- PHP 构建语义 Web CRUD 操作
- PHP-Websockets 上传文件2 优化支持php socket客户端和websocket连接websocket服务器 以守护进程方式运行编码
- Web_PHP_php数据库相关操作;
- SVN—Myeclipse从SVN检出Maven web项目的几种方式
- Web_PHP_PHP XML操作浅谈;
- 《PHP和MySQL Web 开发》 第四章 字符串操作与表达式
- 使用nat方式搭建虚拟机web(lnmp)服务器+svn服务器
- 从零开始学 Web 之 DOM(二)对样式的操作,获取元素的方式
- Web_PHP_DedeCMS_畅言评论模块操作使用说明;
- 深入探讨:PHP使用数据库永久连接方式操作MySQL的是与非
- PHP使用数据库永久连接方式(mysql_pconnect)操作MySQL的是与非