2014-12-01 1 views
0

Bluehost 웹 사이트를 호스팅하고 있으며 AJAX를 사용하여 버튼 클릭으로 파이썬 스크립트를 실행하려고합니다. 그러나 버튼을 클릭 할 때마다 서버는 파이썬 스크립트에 500 오류로 응답합니다. 구체적으로 이것은 오류 :python 스크립트 bluehost의 스크립트 헤더가 너무 빨리 끝납니다.

[Sun Nov 30 17:49:26 2014] [error] [client 174.61.70.33] Premature end of script headers: Steap.py, referer: http://steap.co/

이것은 AJAX 코드 :

$(document).ready(function(){ 
      $("#steambutton").click(function() { 
       DisplayLoadingDiv(); 
       $.ajax({ 
        type: "POST", 
        url: "http://steap.co/cgi-bin/Steap.py", 
        data: {steamid: "<?php echo $steamprofile['steamid']?>"}, 
        success: function(response) { 
         $("#steamdiv").html(response); 
         $("#phisherbutton").show() 
        }, 
        error: function(response) { 
         $("#steamdiv").html("An error occured. Please try again."); 
        } 
       }); 
      }); 
}); 

기본적 DIV가 실행 "An error occured. Please try again." 0.01 후 초를 표시하고, 콘솔 서버가 (500)으로 대응하는 것이 도시 파이썬 스크립트 리소스를로드하려고 할 때 오류가 발생했습니다.

Steap.py : 왜 이런 일이에 관해서는

http://pastebin.com/F9THyt3u

어떤 아이디어?

+0

그래서 ... 'steap.co'는 당신의 서버입니다. , 권리? 해당 서버 로그에 오류가 있습니까? – BorrajaX

+0

steap.co는 서버가 아닌 웹 사이트입니다. 그리고 이것은 서버 로그에있는 오류입니다.'[Sun Nov 30 17:49:26 2014] [error] [client 174.61.70.33] 스크립트 헤더의 조기 종료 : Steap.py, referer : http://steap.co /' –

+0

Potato, poteito ... ** : - D ** 그래서'Steap.py'는 정확히 어디에서 작동합니까? 내 말은 ... 모든 것이 여기에 어떻게 연결되어 있는지 모르겠다. 네가 뛰는 'POST'를 보내는 'POST'. 누가 실행하는지 ... 누가 그걸 알고 있는지 ... 그리고 너에게 HTTP를주고있다. 500 ... 여기서 'Steap.py'가 어디에서 작동합니까? – BorrajaX

답변

0

나는 실질적으로 Steap.py에 HTTP 응답을 구성하지 못한다는 것이 확실합니다. 특히 중요한 것은 내가 내 컴퓨터에 (SocketServer 사용) 원시 TCP 소켓 구현을 설정 한 HTTP/1.1 200 OK\n 부분합니다 (Status Line)

이고 올바르게 다음을 수행하여 내 웹 브라우저에서 페이지를 렌더링 :

import datetime 
    body=("<html><title>Hello</title>" 
      "<body>" 
      "<div id=\"div-name\">" 
      "%s" 
      "</br></br>" 
      "</div>" 
      "</body>" 
      "</html>" % foo(bar)) 

    reply=("HTTP/1.1 200 OK\n" 
      "Date: %s\n" 
      "Content-Type: text/html\n" 
      "Content-Length: %s\n" 
      "Connection: close\n" 
      "\n" 
      "%s" 
      % (datetime.datetime.utcnow().isoformat(' '), 
       len(body), 
       body) 
    ) 
    print reply 

이 잘 크롬에 표시 보이는 : 말할

enter image description here

가없이,하지만 난 이야 내 foo(bar) 기능 :

def foo(bar): 
    return "Test test" 

이 모든 난 정말, 정말 Bluehost를 "영역"에서 (예 : Django 또는 Tornado 등) 미리 만들어진 서버를 설치하는 방법을 연구 거라고 말했다 (또는 그러나 당신을 그것을 부르고 싶다). 나는 토네이도쪽으로 기울어 져있다. (사용법은 매우 기본적인 것이지만 많은 도움이 될 것이므로 머리 글자와 시체를 직접 쓰지 않아도된다.)

+0

나는 여전히 같은 오류가 발생하고있다. 나는 내 코드를 다음과 같이 바꿨다 : http://pastebin.com/DDVuUWT7 –

+1

'print'가 브라우저에 보내지는 응답 인 것 같아서,'print "줄을 지우거나 주석을 달아 주겠다. : text/html \ r \ n \ r \ n "'(21 행). 브라우저에서 "고아"헤더로 해석 할 수 있습니까? – BorrajaX

+0

그래도 문제가 해결되지 않으면 질문을 편집하고 'Steap.py'의 내용을 조금 더 추가 하시겠습니까? – BorrajaX

관련 문제