[thttpd 2탄] cgi 실행하면 앞에 꽁수를 부려야 실행이 됩니다.
글쓴이: 삽질토비 / 작성시간: 목, 2005/05/26 - 9:46오전
산넘어 산이라고,
하나 해결하니까, 또 부닥치는군요.
cgi 파일을 다음과 같이 만들어줬습니다.
#!/bin/sh
echo "AAAA"
이렇게 하면 실행 안되고, 아무 반응 없습니다.
그런데, 앞에다가 꽁수를 부리면 실행이 됩니다.
#!/bin/sh
/sbin/ifconfig lo # <- 꽁수부분
echo "BBBB"
꽁수부분이라고 해 놓은 부분을 추가해주면,
웹에서 실행시켰을때,
BBBB
라고만 뜹니다.
꽁수부분은 무시되는거죠.
그렇다고 꽁수부분에 다른걸 넣으면,
예를들어,
/bin/ls -al
이라고 넣으면 다시 안됩니다.
테스트 해본 결과 (다른 경우도 있겠지만, 일단 테스트 중에서)
/sbin/ifconfig lo 만 다음 라인부터 실행을 시켜줍니다.
쉘 스크립트를 cgi 로 돌리려면,
뭔가 설정이 필요한가요?
Forums:


echo "Content-Type:text/plain"echoec
echo "Content-Type:text/plain"
echo
echo
이런 식으로 해야 하지 않을까요?
RFC HTTP 문서 보세요.
RFC HTTP 문서 보세요.
------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.
사용하고 계신 thttpd 프로그램의 버그 아닐까요?1탄의 질문에
사용하고 계신 thttpd 프로그램의 버그 아닐까요?
1탄의 질문에서 얘기드렸듯이.. 제 busybox 1.0의 httpd는 특별한 설정 없이도...
모든것이 잘 되거든요...
[quote="Anonymous"]echo "Content-Type:te
꼭 이런식으로 헤더를 표시해야 웹브라우저로 결과물이 출력됩니다. RFC 문서 보심이 제일 빠를것 같군요.
[url=http://ietf.org/rfc/rfc3875.txt]RFC
RFC 3875(CGI 1.1)에 따르면, 6.2.1 Document Response에 다음과 같은 부분이 있습니다.
The CGI script can return a document to the user in a document response, with an optional error code indicating the success status of the response. document-response = Content-Type [ Status ] *other-field NL response-body The script MUST return a Content-Type header field. A Status header field is optional, and status 200 'OK' is assumed if it is omitted. The server MUST make any appropriate modifications to the script's output to ensure that the response to the client complies with the response protocol version.MUST라니 자명하지요? :)
- 토끼군
댓글 달기