웹 서버에서 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 웹 서버라고 가정하면
/var/log/httpd/error_log
또는
/var/log/apache2/error.log
tail
또는 를 사용하여 쉽게 확인할 수 있습니다 .less