CGI용 Apache 웹 서버 구성
서버에서 CGI 스크립트를 제대로 실행하려면 웹 서버를 구성해야 합니다. CGI 스크립트를 실행하도록 Apache 웹 서버를 구성하는 방법에 대해 설명합니다.
ScriptAlias 사용
디렉토리를 ScriptAlias 지시문(Apache 구성 옵션)으로 설정할 수 있습니다. 이런 식으로 Apache는 해당 디렉토리에 있는 모든 파일이 CGI 스크립트임을 이해합니다. 이것은 Apache에서 CGI 스크립트를 실행하는 가장 간단한 방법일 수 있습니다. 일반적인 ScriptAlias 행은 Apache 웹 서버의 httpd.conf 파일에서 다음과 같습니다.
ScriptAlias /cgi-bin/ /usr/local/apache2/cgi-bin/
따라서 Apache에서 지정한 기본 디렉토리에 모든 CGI 파일을 유지하려면 httpd.conf 파일에서 ScriptAlias를 검색하고 행의 주석 처리를 제거합니다(앞의 # 제거). 그러나 이것이 항상 귀하의 요구 사항을 충족시키는 것은 아닙니다. 따라서 Python을 CGI로 실행하기 위한 몇 가지 다른 옵션도 살펴보겠습니다.
기본 디렉토리가 아닌 특정 디렉토리에서 CGI 실행
다음을 사용하여 CGI 파일을 실행할 특정 디렉토리를 준비할 수 있습니다.
<Directory /usr/local/apache2/htdocs/somedir>Options +ExecCGI</Directory>
여기서 'somedir'은 선호하는 디렉토리입니다.
위 구성을 사용하는 경우. 그런 다음 실행할 CGI 파일의 서버 확장에 다음을 지정해야 합니다.
AddHandler cgi-script .cgi .pl
따라서 위의 내용은 Apache에 .cgi 및 .pl 확장자를 가진 파일을 CGI로 실행하도록 지시합니다.
사용자 디렉토리
사용자 디렉토리에서 CGI 파일을 실행하려면 다음을 사용할 수 있습니다. -
<Directory /home/*/public_html> Options +ExecCGI AddHandler cgi-script .cgi </Directory>
위의 내용은 Apache가 사용자 디렉토리에 존재하는 .cgi 확장자를 가진 모든 파일을 CGI로 실행한다고 말합니다.
다시 말하지만, 사용자 디렉토리에 있는 모든 파일을 CGI로 실행하려면 다음을 사용할 수 있습니다. -
<Directory /home/*/public_html/cg-bin> Options +ExecCGI SetHandler cgi-script </Directory> Using .htaccess
httpd.conf 파일에 액세스할 수 없는 경우 .htaccess 파일을 사용하여 CGI 스크립트를 실행할 수 있습니다. 특정 확장자를 가진 파일을 CGI로 사용하려면 .htaccess 파일을 다음과 같이 구성하십시오 -
Options +ExecCGI AddHandler cgi-script cgi pl
디렉토리에 있는 모든 파일을 CGI로 실행하려면 다음을 사용할 수 있습니다. -
Options +ExecCGI SetHandler cgi-script