localhost
에 이미지를 표시하려고합니다. 첫 번째 단계로 나는 파이썬으로 서버 스크립트를 만들었습니다.로컬 호스트에서 이미지를 표시 할 수 없습니다.
#!/usr/bin/env python
import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() ## This line enables CGI error reporting
server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("", 8000)
handler.cgi_directories = ["/"]
httpd = server(server_address, handler)
httpd.serve_forever()
이미지는이 스크립트가 실행되는 디렉토리와 동일한 디렉토리에 배치됩니다. 이후 http://localhost:8000/test.jpg
이 브라우저에 입력됩니다.
브라우저 오류로 이미지를 렌더링하는 데 실패 The image "http://localhost:8000/test.jpg" cannot be displayed because it contains errors.
서버 스크립트는
내가 텍스트를 표시하는 시도File "/usr/lib/python2.7/CGIHTTPServer.py", line 253, in run_cgi
os.execve(scriptfile, args, env)
OSError: [Errno 8] Exec format error
같은 오류가 발생하고 서버 예제의 많은 잘 작동합니다. 그것은 이미지를로드하지 않는 것을 제외하고는. 내가 어디로 잘못 가고 있니?
문제가 해결되었습니다. test.jpg를 서버 디렉토리 내의 하위 디렉토리로 이동했습니다.
필자는 분명히 html에 몇 가지 텍스트 메시지와 함께 이미지를 표시해야합니다. 이미지는 파이썬 스크립트 실행 후 생성되므로 CGIHttpServer가 필요합니다. 이 상황을 어떻게 처리할까요? SimpleHTTP는 브라우저에 이미지를 표시하지만 처음에는 그것을 생성하기 위해 CGIHttp가 필요합니다. – Vikram
CGI 스크립트를 하위 디렉토리에 넣고 거기에서 제공합니까? 기본적으로 cgi-bin에 넣으면 원하는대로 작동합니다. –