Php 在VPS上上载Apache沙盒和文件

Php 在VPS上上载Apache沙盒和文件,php,linux,apache,security,Php,Linux,Apache,Security,在此之后,不应允许运行Apache的用户写入任何文件。从安全角度来看,这很好,但是允许文件上传的PHPweb应用程序如何能够与这样的设置一起工作呢 一个虚拟化工具,比如linux-vserver,或者OpenVZ(如建议的那样)将是一个备选方案,但是我不确定性能的影响,因为我的linux框已经在虚拟机中运行 我想到的另一种方法是使用一个在上传文件夹中具有写入权限的用户下运行的进程,并让我的PHP脚本通过IPC与之通信 我倾向于第二种解决方案,但是在我开始开发该应用程序之前,我想知道是否有更简单的

在此之后,不应允许运行Apache的用户写入任何文件。从安全角度来看,这很好,但是允许文件上传的
PHP
web应用程序如何能够与这样的设置一起工作呢

一个虚拟化工具,比如
linux-vserver
,或者
OpenVZ
(如建议的那样)将是一个备选方案,但是我不确定性能的影响,因为我的
linux
框已经在
虚拟机
中运行

我想到的另一种方法是使用一个在
上传
文件夹中具有写入权限的用户下运行的进程,并让我的
PHP
脚本通过
IPC
与之通信


我倾向于第二种解决方案,但是在我开始开发该应用程序之前,我想知道是否有更简单的解决方案。

让用户或组通过对单个上传文件夹的写访问来执行php代码,并禁用该目录的php执行

如果您使用的是mod_php,那么它将是Apache用户

如果您使用的是php fpm,它可能默认为Apache用户,但它肯定可以更改(即使是每个池,如果您有多个池用于不同的应用程序/站点)