什么用户是我的CentOS linux机器上的PHP?根?
您好,我正在尝试解决为什么我无法将文件上传到运行在EC2上的CentOS机器上的问题,并认为这可能是权限问题(正如我从前面的问题中了解到的)。如何检查我的PHP安装有哪些写入文件的特权。我要将文件写入的目录已在与尝试写入文件的PHP脚本相同的文件夹中创建,该文件夹的权限为rwxr-xr-x。文件夹的所有者是root。试图写入上传文件的PHP文件的所有者也是root 当PHP文件试图写入它发送的bytearray数据时,我收到以下错误消息-file\u put\u contents无法打开流:中没有这样的文件或目录 我应该如何引用我想要保存文件的目录-绝对目录还是相对目录?我还做错了什么什么用户是我的CentOS linux机器上的PHP?根?,php,permissions,amazon-ec2,Php,Permissions,Amazon Ec2,您好,我正在尝试解决为什么我无法将文件上传到运行在EC2上的CentOS机器上的问题,并认为这可能是权限问题(正如我从前面的问题中了解到的)。如何检查我的PHP安装有哪些写入文件的特权。我要将文件写入的目录已在与尝试写入文件的PHP脚本相同的文件夹中创建,该文件夹的权限为rwxr-xr-x。文件夹的所有者是root。试图写入上传文件的PHP文件的所有者也是root 当PHP文件试图写入它发送的bytearray数据时,我收到以下错误消息-file\u put\u contents无法打开流:中没
干杯如果PHP是从web服务器运行的,这取决于web服务器的配置 Web服务器可能会删除特定用户(Apache)的权限,或者作为拥有权限的用户使用(或类似的东西)执行它
请注意,suexec将不允许您以root用户身份运行脚本,Apache会警告您将用户指令设置为root;这意味着从Apache运行的任何脚本都将以root用户身份运行,这是非常危险的。假设由
PHP
您指的是web服务器进程,假设您运行的是默认的Apache
并且没有更改其默认值,我希望它是CentOS
的用户使用:
<?php
$user = posix_getpwuid(posix_geteuid());
var_dump($user);
?>
是的,这是用户名apache for centOSand没有这样的文件或目录
显然表示没有目标目录。这是权限问题,我必须更改组并使用-chgrp apache/var/www/html/uploads chmod 775/var/www/html/uploads设置权限/
chown -R username /path/to/directory