为什么我的Apache服务器仍然执行我的CGI脚本后,我把用户指令从守护进程改为Apache?

为了安全起见,我在系统中创build了一个没有shell和主目录的apache用户。 然后我把httpd.conf用户指令从守护进程改为apache。 它在apache中创buildsubprocess,以apache用户身份运行。

为什么我的Apache服务器仍然执行我的CGI shell脚本与Apache用户没有shell?

您的apache用户没有loginshell或主目录。 那很好。

但是,“没有shel”并不意味着用户不能运行shell脚本。 这是完全不同的东西。

你已经将httpd守护进程configuration为以“apache”用户身份运行,所以它启动的所有进程也将以用户“apache”运行,包括CGI cript。 这是如意的。