사이트 내 전체검색
[linux] cgi-bin 디렉토리 이 외의 다른 디렉토리에서 cgi를 실행시키는 방법
로빈아빠
https://cmd.kr/server/160 URL이 복사되었습니다.

본문

cgi-bin 디렉토리 이 외의 다른 디렉토리에서 cgi를 실행시키는 방법

아파치 웹서버에서 cgi를 실행시키는 방법은 크게 두 가지가 있습니다.

1. ScriptAlias
이 방법에 의해 cgi-bin 디렉토리의 cgi가 실행되게 됩니다. 대부분의
경우 아래와 같은 기본 설정이 있습니다. 이것은 ScriptAlias가 걸린
경로의 모든 파일을 실행가능한 스크립트라고 인식시키는 것입니다.

ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/"

AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
< /Directory >

이 설정을 참고로 cgi-bin 디렉토리 이 외에 cgi를 실행할 디렉토리에
대한 설정을 추가해 주시기 바랍니다. 위의 설정을 복사하여 필요한
부분만 수정해 주면 됩니다. 예를 들어 /home/httpd/script/ 경로에서
cgi를 실행시키려면 아래의 내용을 추가해 주어야 합니다.

ScriptAlias /script/ "/home/httpd/script/"

AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
< /Directory >

2. Addhandler
이것은 특정 확장자에 대한 핸들링을 지정합니다. 즉, cgi 확장자로 끝나는
파일을 cgi 스크립트로 인식하게 됩니다.

이 방법을 사용하려면, cgi를 실행시킬 경로에 대해 "Options ExecCGI"를
추가해 줍니다. ScriptAlias방법에서 이 옵션이 포함되어 있으나, 없어도
실행이 가능합니다. 그러나 이 방법에서는 필수로 포함되어 있어야 합니다.

AddHandler cgi-script .cgi
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
< /Directory >

위와 같이 설정이 되면 /home/httpd/script 디렉토리에서 cgi확장자를 가진
파일은 스크립트로 인식이 되어 실행이 가능해집니다. 그러나, 이 방법을
아파치 웹서버 문서 루트 디렉토리에 주게 되면 보안상 취약하므로 필요한
디렉토리에만 사용하는것을 권장합니다.

댓글목록

등록된 댓글이 없습니다.

1,139 (5/23P)

Search

Copyright © Cmd 명령어 18.118.217.168