无法从 Web 服务器执行 shell

无法从 Web 服务器执行 shell

当我尝试从 Web 服务器执行 php 脚本时,它会失败:

在此输入图像描述

cat test.sh
echo "Hello World"
[root@yumserver ~]#

我正在尝试在网页上构建一个按钮,通过它我可以将脚本推送到后台。

nohup test.sh &

请在下面找到许可/所有权详细信息:

-rwxrwxrwx 1 apache apache 62 Mar 28 04:14 run.php 
-rwxrwxrwx 1 root root 62 Mar 27 06:33 sync.php 

即使我尝试了 CGI-bin 但特定脚本没有被执行。

#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "<html><head><title>Bash as CGI"
echo "</title></head><body>"
echo "<h1>General system information for host $(hostname -s)</h1>"
echo ""
echo "<h1>Memory Info</h1>"
echo "<pre> $(free -m) </pre>"
echo "<h1>Disk Info:</h1>"
echo "<pre> $(df -h) </pre>"
echo "<h1>Logged in user</h1>"
echo "<pre> $(w) </pre>"
echo "<h1>test</h1>"
echo "<pre> $(sh /var/www/cgi-bin/yumsync.sh) </pre>"  <<<<<
echo "<pre> $(nohup uln-yum-mirror &) </pre>"  <<<<<
echo "<center>Information generated on $(date)</center>"
echo "</body></html>"

yumsync 或 uln-yum-mirror 是我试图将其推到后台的脚本,但它没有启动。有什么建议可能是什么原因吗?

答案1

服务器错误日志几乎肯定会告诉您原因。假设它是 apache Web 服务器,根据您的发行版,它可以是

/var/log/httpd/error_log

或者

/var/log/apache2/error.log

您可以使用tail或方便地检查它们less

相关内容