发布网友 发布时间:2022-04-21 17:41
共5个回答
热心网友 时间:2022-04-06 02:05
我们的服务器是这样做的:
php一般是以apache用户身份去执行的,把apache加入到存储你文件的父文件夹属组里去,然后改该父文件夹权限为775,这样属组成员就有写的权限,而apache属于这个组就可以改写该目录下所有文件的权限,当然,属组最好不要是root,你可以为该文件夹改个其它普通用户组。
改apache/php的运行用户方法不安全,不建议使用。
热心网友 时间:2022-04-06 03:23
在php教程中调用linux命令的函数是
string exec(string command, string [array], int [return_var]);
如
exec( "vpopmail ");
echo exec('whoami');
再看一实例
function exec_enabled() {还有一种命令是
php通过函数system()调用系统命令。
string system ( string $command [, int &$return_var ] )实例
system('asterisk -vvvvvvvvvvvc');system()是一样的函数C的,它执行给定的命令和输出结果的版本。该system()的调用也尝试自动刷新网页服务器的输出缓冲器在每个输出
行如果PHP运行作为服务器模块。如果你需要执行一个命令,并已全部通过直接从背面没有任何干扰的命令数据,使用passthru()函数。
php调用linux命令的权限问题
你可以使用定时任务执行你要调用的php,这时的权限就是root,
php通过函数system()调用系统命令
php一般是以apache用户身份去执行的,把apache加入到存储你文件的父文件夹属组里去,然后改该父文件夹权限为775,这样属组成员就有写的
权限,而apache属于这个组就可以改写该目录下所有文件的权限,当然,属组最好不要是root,你可以为该文件夹改个其它普通用户组。
改apache/php的运行用户方法不安全
热心网友 时间:2022-04-06 04:57
<?php // 说明:摘录自 User manager for PureFTPd 的权限显示函数 // 整理:http://www.CodeBit.cn function DisplayFilePermissions($Mode) { // Determine Type if ($Mode & 0x1000) { $Type = 'p'; // FIFO pipe } else if ($Mode & 0x2000) { $Type = 'c'; // Character special } else if ($Mode & 0x4000) { $Type = 'd'; // Directory } else if ($Mode & 0x6000) { $Type = 'b'; // Block special } else if ($Mode & 0x8000) { $Type = '-'; // Regular } else if ($Mode & 0xA000) { $Type = 'l'; // Symbolic Link } else if ($Mode & 0xC000) { $Type = 's'; // Socket } else { $Type = 'u'; // UNKNOWN } // Determine permissions $Owner['read'] = ($Mode & 00400) ? 'r' : '-'; $Owner['write'] = ($Mode & 00200) ? 'w' : '-'; $Owner['execute'] = ($Mode & 00100) ? 'x' : '-'; $Group['read'] = ($Mode & 00040) ? 'r' : '-'; $Group['write'] = ($Mode & 00020) ? 'w' : '-'; $Group['execute'] = ($Mode & 00010) ? 'x' : '-'; $World['read'] = ($Mode & 00004) ? 'r' : '-'; $World['write'] = ($Mode & 00002) ? 'w' : '-'; $World['execute'] = ($Mode & 00001) ? 'x' : '-'; // Adjust for SUID, SGID and sticky bit if ($Mode & 0x800) $Owner['execute'] = ($Owner['execute'] == 'x') ? 's' : 'S'; if ($Mode & 0x400) $Group['execute'] = ($Group['execute'] == 'x') ? 's' : 'S'; if ($Mode & 0x200) $World['execute'] = ($World['execute'] == 'x') ? 't' : 'T'; return $Type . $Owner['read'] . $Owner['write'] . $Owner['execute'] . $Group['read'] . $Group['write'] . $Group['execute'] . $World['read'] . $World['write'] . $World['execute']; } $perms = fileperms( '/etc/passwd' ); echo DisplayFilePermissions($perms); ?>
热心网友 时间:2022-04-06 06:49
一种方法,修改文件权限,允许去php程序去修改
另外一种方法,修改php运行程序的执行用户,
热心网友 时间:2022-04-06 08:57
php 用户 访问文件 是 apache 用户 的权限!你看下 那个文件 是怎么样的权限设置