WEB2 - Python

설치 및 연동 - Windows

수업소개

이 수업에서는 윈도우즈에서 Python, Apache를 연동해 웹애플리케이션을 구동하는 방법을 살펴봅니다. 

 

 

웹서버 설치

 

 

Python 설치 및 실행

 

 

Apache와 Python을 CGI로 연동하는 방법

아파치의 환경설정 파일을 수정합니다. 필자는 아래의 위치에 파일이 있습니다. 

C:/Bitnami/wampstack-7.1.15-0/apache2/conf/httpd.conf

 

Document root(웹서버가 요청한 파일을 찾는 최상위 디렉토리)에 있는 파일 중 확장자가 py인 파일은 Python으로서 실행 되도록 합니다. 추가한 내용은 5~8행입니다. 

<Directory "C:/Bitnami/wampstack-7.1.15-0/apache2/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
    <Files "*.py">
      Options ExecCGI
      AddHandler cgi-script .py
    </Files>
</Directory>

 

mod_cgi 혹은 mod_cgid 기능을 활성화해야 합니다. httpd.conf에서 아래 행이 아래와 같이 #으로 시작한다면 #을 제거해주세요.

#LoadModule cgi_module modules/mod_cgi.so

 

웹서버를 재시작합니다. 

 

python script를 작성합니다. 

/htdocs/helloworld.py

#!python
print("content-type:text/html; charset=UTF-8\n")
print(1+1)

 

접속합니다. 

필자의 경우는 아래 주소였습니다. 자신의 주소에 접속하시면 됩니다. 

http://127.0.0.1/helloworld.py

 

오류가 발생하면 아래 경로에서 오류 메시지를 확인해봅니다. 

C:/Bitnami/wampstack-7.1.15-0/apache2/logs/error.log

 

댓글

댓글 본문
  1. 저 역시 Hcode님이 알려준 대로 파이썬으로 가는 경로를 붙여줘야 겨우 되;는군요. 휴,,감사합니다.
    #!C:\Users\philo\AppData\Local\Programs\Python\Python39\python.exe
  2. jeisyoon
    2021.04.06 설치 및 연동 Window - OK

    4시간 정도 헤메다가 성공하였습니다.
    어렵네요 ..
  3. 박상헌
    와 ㅠㅠ 감사합니다
    여기에 덧붙이면 파일 위치 찾는법은 응용프로그램(뒤에 .exe로 끝나는 파이썬파일)을 우클릭후 속석 보시면 대상이라는 항목옆에 이 프로그램이 있는 위치가 나와요!!
    대화보기
    • 오징어
      안녕하세요
      vscode 에서 htdocs 폴더 연 후 index.html 내용을 수정 하고 저장을 눌렀는데 권한 부족으로 저장 실패가 뜨고
      관리자로 다시 시도해도 User did not grant permission이 뜨네요...어떻게 해결해야 할까요...?
    • [client 127.0.0.1:64802] couldn't create child process: 720005: helloworld.py <<이와 같은 에러가 뜨시는분들은

      영상에서 #!python <<이 부분을 실제 컴퓨터에 python.exe 가 설치되어있는 경로로 변경해주시면됩니다

      #!C:\Users\name\AppData\Local\Programs\Python\Python39\python.exe

      위에서 name 과 python39 이 부분을 경로에 맞게 변경하여주셔서 적용해보세요!
    • 다음날 실습하려고 다시 cmd 들어가서 하는데 되네요....?
      그냥 재부팅하면 되는건지
      아니면 전 원화(\) 나오는걸 백슬래쉬로 바꿔서 그 영향이 있는건지는 모르겠어요.
      대화보기
      • 저도요!!!! 해결하고 싶은데 구글링 해도 모르겠네요;;;
        그래서 그냥 파일 경로 찾아서 복사 붙여넣기 하고 있어요.
        이 찝찝하게 넘어가는 느낌... 이 강의 듣는 사람들은 다 window 환경일 텐데, 뭐가 문제일까요...?

        그래도 다른 건 끝까지 잘 실행이 되서 안도하며 일단 지나갑니다.
        아시는 분 해결법 뙇 던져주시고 가셨으면 좋겠네요. ㅎㅅㅎ
        대화보기
        • 파이딴
          SyntaxError: Non-UTF-8 code starting with '\\xed' in file C:\\Bitnami\\wampstack-8.0.2-0\\apache2\\htdocs\\index.py on line 32, but no encoding declared; see http://python.org......63/ for details\r: C:/Bitnami/wampstack-8.0.2-0/apache2/htdocs/index.py

          이런 오류 나오는데 어떻게 해야되나요?

          127.0.0.1/helloworld.py
          에서는 웹브라우저에 4.0이 나오는데

          127.0.0.1/index.py
          에서는 Internal Server Error 가 뜨고 오류내용은 위와 같습니다
        • 황현석
          강의를 보고 따라하다가 2번째 영상 10분 40초대 과정에서 막혔습니다.
          cmd창을 열고 cd|bitnami|wampstack-7.4.14-0|apache2|htdoc 입력을 했는데 cmd창에서 입력 결과로

          'Bitnami'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
          배치 파일이 아닙니다.

          가 자꾸 떠서 구글링을 통해 환경변수에도 추가해봤는데 잘 안됩니다ㅠㅠ 이 문제를 해결하신분이 계시다면 한번만 살려주세요 ㅠㅠ 부탁드립니다..
        • 저는 wamp 서버를 stop 해버리면 재시작이 안 되어요 ㅠㅠ 저같은 오류 있으신 분 있나요
        • 나비
          아톰에서 helloworld.py 생성이 안되는 분 계신가요? operaton not permitted라고 계속 나오네요ㅠㅠ
        • 나이스!
        • 보라
          python.exe 경로를 넣으니 잘 되네요. 감사합니다!
        • night_eon
          안녕하세요 저도 같은 오류로 고민을 했는데 제가 해결했던 방법은
          #!D:\PYTHON\python.exe 이렇게 파이썬이 설치된 경로를 적어줬어요
          강의 따라 #!python만 했을 때 오류가 나서 검색을 좀 했는데 파이썬 응용프로그램이 설치된 경로를 적어주면 된다고 나오더라구요 !! 꼭 해결 하셨으면 좋겠습니당 !!
          대화보기
          • 최고우수
            helloworld.py 파일 첫번째 줄에
            #!python 대신에 python.exe 파일이 있는 설치 경로로 수정하니 실행되네요..

            저도 밑에 댓글보고 해결했어요! 똑같은 에러 해결했습니다!
            대화보기
            • [Sun Jan 03 15:24:13.524313 2021] [cgi:error] [pid 16720:tid 1172] (OS 193)%1��(��) �ùٸ� Win32 ���� ���α׷��� �ƴմϴ�. : [client 127.0.0.1:60598] couldn't create child process: 720193: hiwd.py
              [Sun Jan 03 15:24:13.525309 2021] [cgi:error] [pid 16720:tid 1172] (OS 193)%1��(��) �ùٸ� Win32 ���� ���α׷��� �ƴմϴ�. : [client 127.0.0.1:60598] AH01223: couldn't spawn child process: C:/Bitnami/wampstack-8.0.0-1/apache2/htdocs/hiwd.py
              라는 오류가 뜨는데 도와주세요 ㅠㅠ
            • 박민지
              html로 들어가서 그런거였네요.....ㅠㅠㅠㅠㅠ 파이썬 파일로 들어가니까 됐습니다
              대화보기
              • 박민지
                httpd.conf 파일에 python 관련 코드를 추가하고 웹서버 재시작 까지는 잘 되요. 그런데 오류 화면이 뜨지 않습니다. httpd 파일 내용은 코드 제대로 추가 되있어요. 왜 이럴까요....같은 부분에서 안되시는 분 계신가요???
              • 201231
                C:\Bitnami\wampstack-8.0.0-1 버전인데 동영상대로 따라하니 잘되네요 ^^;
              • siba2z
                2020.12.12
              • 리플
                2020.12.10
              • 감사합니다. 이제야 잘 됩니다
              • audio_video_disco
                20201108 시작
              • 모다피님께,,
                저도 같은 곤란에 빠졌는데, 모다피님은 어덯게 해결하셨는지요?
              • dagel0102
                20.10.09
              • cgoing
                cgoing / 2020.09.30
              • 반달곰
                똑같은 상황이었는데요...
                helloworld.py파일을 cgi-bin폴더에 넣으면 정상이 됩니다.
                htdocs폴더에 넣어도 되도록하는 방법은 못 찾았습니다.
                대화보기
                • 황보람
                  감사합니다!!!!ㅠㅠ^^
                  대화보기
                  • jiyeong
                    2020.08.31.새벽한시에 끝냄. (백업해둔 파일에 작성을 해놔서 찾느라 애먹음 .. )
                  • 탱크빵야
                    <AH01223: couldn't spawn child process: C:/Bitnami/wampstack-7.3.10-0/apache2/htdocs/helloworld.py 에러가 나시는 분들은 참조해보세요.>

                    밑에 @Baemaek 님 글 참고하세요~
                  • 김민규
                    [Thu Aug 06 10:01:30.897037 2020] [cgi:error] [pid 1240:tid 1116] [client 127.0.0.1:5298] End of script output before headers: helloworld.py, referer: http://127.0.0.1/
                    이 오류는 어떻게 해야할까요 ㅠ 밑에 있는 해결책 다 해봤는데 안되요 ㅠ
                  • 장정민
                    즐코~즐코~
                  • 모다피
                    예전에도 생활코딩에서 파이썬 공부할 때 맨 처음 단계인 이게 안돼서 더 공부를 못했습니다..운영자님이 보신다면 알려주시면 정말 감사하겠습니다 진짜 포기하고싶지 않은데 주변에 알려줄 사람이 없어요
                    대화보기
                    • 모다피
                      에러를 지웠는데도 아무것도 뜨지 않습니다. 에러에 아무 문자도 없어요..어떻게 해결해야 할까요?
                      대화보기
                      • 모다피
                        http://127.0.0.1.......py 에서 4.0이 안나오고

                        #!python
                        a = 3+4+5
                        b = a/3
                        print("content-type: text/html;charset=utf-8\n")
                        print(b)

                        이거 그대로 나옵니다. 하라는대로 다 했는데...이거 어떻게 해결할까요? 끝까지 오류 없이 다 했는데 안나오니까 너무 답답해요.....포기하고 싶지 않은데 아시는 분 댓글 부탁드립니다..
                      • 200725
                      • 20/07/06 시작:)
                      • 니이내이
                        2020/07/01
                        (이전까지 정상적으로 진행)
                        두줄 가량의 error log 확인후 helloworld.py first line에 #!python을 적어줌

                        문제 시작
                        다시 reload했지만 파이참 에디터상의 error.log파일에 물음표가 생기면서 에러 로그 보는것 자체가 불가능해짐.
                        물론 print("content-type: text/html; charset=utf-8\n") 결과도 안뜸.

                        수정사항

                        - 시스템변수 PATH 수정 (from 생활코딩 https://bit.ly/3eK5jPg)
                        : 내컴퓨터 - 속성 - 고급시스템설정 - 환경변수 - 시스템 변수 - Path변수값중 %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\에 ;C:\Program Files (x86)\Python38-32\을 추가해준다.

                        - helloworld.py의 first line을 #!python에서 #!C:\Program Files (x86)\Python38-32\python.exe으로 바꿔주었다.

                        - apache server stopped 문제 (from https://bit.ly/3dKTU0j)
                        C:\Bitnami\wampstack-7.4.7-0\apache2\conf 디렉토리의 httpd 파일을 열어 SetEnv PATH "C:\Bitnami\wampstack-7.4.7-0/apache2/bin;${PATH}"라고 적힌 부분 앞에 #을 붙여준다. 관리자 권한으로 cmd를 켠뒤 cd \를해서 C:로 이동후 cd C:\Bitnami\wampstack-7.4.7-0\apache2\bin로 이동을 한다. 이후 httpd.exe -k install을 치면 됨. 설치돼있으면 httpd.exe -k start을 클릭하면됨. 이제 apache stop후 restart하면됨.

                        -여전히 error.log는 안열린다. apache server도 stopped이다가 running이다가 알수가없다...
                        -물론 4.0은 정상출력되고, cmd상의 문구도 정상적으로 출력된다. 일단 넘어가자.
                      • 개발개발개발
                        64비트 설치해도 되나요??
                      • psyless
                        20200606
                      • newbieno1
                        error.log 에 에러가 뜨지 않는 경우에는 어떻게 해결할 수 있을까요..?
                      • marinelamp
                        오....감사합니다.
                        엄청 해매고 있었는데...
                        진심으로 감사드립니다 ㅠㅠ
                        대화보기
                        • eddylee123456
                          완료
                        • 감사합니다. 파이썬 입문하였습니다 :)
                        • 생초보
                          파이썬이랑 비트나미 하나도 남김없이 싹 지우고 다시깔아서 실행하니까 되네요..ㅠㅠ 뭐가 문제였던건지는 모르겠지만 된다는데 의의를 두려합니다 찝찝한 이 기분..
                          대화보기
                          • 생초보
                            그대로 실행했는데 에러도 안뜨고 값이 바뀌지도 않고 html코드가 그대로 나오는데 어떻게 해야할까요... 퇴근 후 코딩공부가 취미인데 여기에 막혀서 헤매다가 두시간자고 출근하게 생겼습니다...고수님들 도와주세요...
                          • 별짱
                            python 설치 경로를 시스템 환경 변수 바꾸고 재부팅하니 됩니다..
                          • Mocha
                            와 오래 걸렸지만 넘 뿌듯하네요ㅠㅠ
                          • 위처럼 파일 맨 위에 #!python 을 입력하려면
                            시스템 환경변수를 설정해줘야 합니다.
                            https://opentutorials.org......610
                            이걸 따라서 환경변수를 설정해주고, 컴퓨터 재부팅해주시면 해결됩니당.
                            저도 처음엔 안됐는데 재부팅하니까 바로 되네요
                          • 클리퍼
                            에러나고 않되서

                            helloworld.py 파일 첫번째 줄에
                            #!python 대신에 python.exe 파일이 있는 설치 경로로 수정하니 실행되네요..

                            #!C:\Users\user\AppData\Local\Programs\Python\Python38-32\python.exe

                            도와 주신 분들 감사합니다
                          버전 관리
                          egoing
                          현재 버전
                          선택 버전
                          graphittie 자세히 보기