运行 PHP 非 apache 端口上的应用程序,非 apache 用户
Run PHP Application on non apache port, with non-apache user
我们有一个 PHP 应用程序可以自动执行脚本命令。其中许多是通过 Web 界面进行的。我希望这个 php 应用程序用户是 运行 大量的 cli 和 ssh 命令,所以我真的不希望 www-data 这样做,因为它会涉及将大量脚本文件更改为 www-data 可执行文件权限,我们希望将脚本输入到 Web 界面中。
此应用程序是cross-操作系统。理想情况下 php 运行 上的任何东西,但赢了,mac,
我们需要能够做的重要事情是(我认为)...
1) 有一个 Web 服务器(目前是 Apache,它正在运行 cross os 这样就很好了),在正常设置下 运行ning,普通用户,反向代理到同一服务器上的以下应用程序。
2) 在不同的端口上有一个 PHP 应用程序,运行宁作为它自己的用户可以做任何它想做的事。
能力刚好运行
php -S localhost:8000
内置的 php 网络服务器似乎非常适合此目的。所以...
1) 如果内置 Web 服务器位于 apache 代理之后,使用 PHP 是否安全?我假设我们正在代理整个请求的事实无论如何都意味着不,因为它说不。
2) 是否有另一个 Web Server/PHP 服务器可以轻松地做到这一点?
3) 有没有办法 运行 宁两个 apache 进程来做到这一点?
4) 我这样做完全错误吗?我知道还有另一个应用程序是这样做的,但是 Java 应用程序和整个过程由非 apache 用户启动和拥有。
提前致谢
Apache 2.4 + php-fpm + mod_proxy_fcgi 会很适合你。
(详细说明否决票——php-fpm 允许 PHP 进程 运行 作为其自己的用户 ID 下的单独守护进程,这正是此处要求的特权分离)
我们有一个 PHP 应用程序可以自动执行脚本命令。其中许多是通过 Web 界面进行的。我希望这个 php 应用程序用户是 运行 大量的 cli 和 ssh 命令,所以我真的不希望 www-data 这样做,因为它会涉及将大量脚本文件更改为 www-data 可执行文件权限,我们希望将脚本输入到 Web 界面中。
此应用程序是cross-操作系统。理想情况下 php 运行 上的任何东西,但赢了,mac,
我们需要能够做的重要事情是(我认为)...
1) 有一个 Web 服务器(目前是 Apache,它正在运行 cross os 这样就很好了),在正常设置下 运行ning,普通用户,反向代理到同一服务器上的以下应用程序。 2) 在不同的端口上有一个 PHP 应用程序,运行宁作为它自己的用户可以做任何它想做的事。
能力刚好运行
php -S localhost:8000
内置的 php 网络服务器似乎非常适合此目的。所以...
1) 如果内置 Web 服务器位于 apache 代理之后,使用 PHP 是否安全?我假设我们正在代理整个请求的事实无论如何都意味着不,因为它说不。
2) 是否有另一个 Web Server/PHP 服务器可以轻松地做到这一点?
3) 有没有办法 运行 宁两个 apache 进程来做到这一点?
4) 我这样做完全错误吗?我知道还有另一个应用程序是这样做的,但是 Java 应用程序和整个过程由非 apache 用户启动和拥有。
提前致谢
Apache 2.4 + php-fpm + mod_proxy_fcgi 会很适合你。
(详细说明否决票——php-fpm 允许 PHP 进程 运行 作为其自己的用户 ID 下的单独守护进程,这正是此处要求的特权分离)