サーバーにPythonスクリプトがあります
#!/usr/bin/env python
import cgi
import cgitb; #cgitb.enable()
import sys, os
from subprocess import call
import time
import subprocess
form = cgi.FieldStorage()
component = form.getvalue('component')
command = form.getvalue('command')
success = True
print """Content-Type: text/html\n"""
if component=="Engine" and command=="Start":
try:
process = subprocess.Popen(['/usr/sbin/telepath','engine','start'], shell=False, stdout=subprocess.PIPE)
print "{ans:12}"
except Exception, e:
success = False
print "{ans:0}"
このスクリプトを実行し、コンポーネントとコマンドのパラメーターをそれぞれ「エンジン」と「開始」に追加すると、プロセスが開始され、シェルに出力されます
"""Content-Type: text/html\n"""
{ans:12}
しかし、最も重要なことは、プロセスを開始することです!
ただし、スクリプトを POST して実行すると、{ans:12} が返されますが、そもそも意図したプロセスが実行されません。論理的な説明はありますか?