CentOS 8 apache2 에서 python 파일 실행하기
페이지 정보
본문
센토스8 아파치에서 확장자 .py 파일을 실행하기 위한 방법이다.
1. 우선 py 파일을 하나 만들어서 실행 권한을 준다.
ㅇ python3 소스다. hw.py 이름으로 저장한다.
[code]
#!/usr/bin/python3
print("Hello World!")
[/code]
ㅇ py 파일에 실행권한을 준다.
# chmod a+x hw.py
ㅇ 로컬에서 실행시켜 보고 결과값이 나오는 것을 확인한다.
# ./hw.py
Hello World!
2. apache 웹서버 설정 및 재시작
[code]
<Directory "/var/www/cgi-bin">
Options ExecCGI
AddHandler cgi-script .py
</Directory>
[/code]
웹서버를 재시작한다.
# httpd -t
# systemctl restart httpd
3 웹에서 확인
http://localhost/cgi-bin/hw.py
ㅇ 500 서버 에러
500 Internal Server Error 가 떨어진다. 헐~
error.log 로그 확인
malformed header from script 'hw.py': Bad header: Hello World!
ㅇ 해결
소스에 content-type header 를 추가해 주고, utf-8 문자셋도 설정하여 한글도 확인한다.
[code]
#!/usr/bin/python3
print("content-type:text/html;charset=UTF-8\n")
print("Hello World!")
print("나와라 한글!")
[/code]
ㅇ 다시 확인
http://localhost/cgi-bin/hw.py
Hello World! 나와라 한글!
잘 나오는 듯 하다.
* 참고
https://han288.tistory.com/33
https://m.blog.naver.com/selfschool/221789268148
https://hongths.tistory.com/37
1. 우선 py 파일을 하나 만들어서 실행 권한을 준다.
ㅇ python3 소스다. hw.py 이름으로 저장한다.
[code]
#!/usr/bin/python3
print("Hello World!")
[/code]
ㅇ py 파일에 실행권한을 준다.
# chmod a+x hw.py
ㅇ 로컬에서 실행시켜 보고 결과값이 나오는 것을 확인한다.
# ./hw.py
Hello World!
2. apache 웹서버 설정 및 재시작
[code]
<Directory "/var/www/cgi-bin">
Options ExecCGI
AddHandler cgi-script .py
</Directory>
[/code]
웹서버를 재시작한다.
# httpd -t
# systemctl restart httpd
3 웹에서 확인
http://localhost/cgi-bin/hw.py
ㅇ 500 서버 에러
500 Internal Server Error 가 떨어진다. 헐~
error.log 로그 확인
malformed header from script 'hw.py': Bad header: Hello World!
ㅇ 해결
소스에 content-type header 를 추가해 주고, utf-8 문자셋도 설정하여 한글도 확인한다.
[code]
#!/usr/bin/python3
print("content-type:text/html;charset=UTF-8\n")
print("Hello World!")
print("나와라 한글!")
[/code]
ㅇ 다시 확인
http://localhost/cgi-bin/hw.py
Hello World! 나와라 한글!
잘 나오는 듯 하다.
* 참고
https://han288.tistory.com/33
https://m.blog.naver.com/selfschool/221789268148
https://hongths.tistory.com/37
추천0
댓글목록
등록된 댓글이 없습니다.