찾다
운영 및 유지보수ApacheApache 서버는 어떻게 CGI 실행을 활성화합니까?

CGI(Common Gateway Interface)는 웹 서버가 CGI 프로그램 또는 CGI 스크립트라고 불리는 외부 콘텐츠 생성 프로그램과 상호 작용하는 방식을 정의합니다. 가장 익숙한 프로그래밍 언어를 사용하여 웹사이트에 동적 콘텐츠를 추가하는 간단한 방법입니다.

Apache 서버는 어떻게 CGI 실행을 활성화합니까?

CGI를 허용하도록 Apache 구성

CGI 프로그램이 제대로 작동하려면 Apache에서 CGI 실행을 허용하도록 구성해야 합니다. 이를 수행하는 방법에는 여러 가지가 있습니다.

방법 1: ScriptAlias ​​지시어                 (권장 학습: Apache 서버 )

ScriptAlias ​​지시어는 Apache에게 CGI 프로그램을 위한 특정 디렉토리를 따로 설정하라고 지시합니다. Apache는 이 디렉터리의 모든 파일이 CGI 프로그램이라고 가정하고 클라이언트가 특정 리소스를 요청할 때 이를 실행하려고 시도합니다.

ScriptAlias ​​​​지시문은 다음과 같습니다.

ScriptAlias "/cgi-bin/" "/usr/local/apache2/cgi-bin/"

Apache가 기본 위치에 설치된 경우 표시된 예는 기본 httpd.conf 구성 파일에서 찾을 수 있습니다.

ScriptAlias ​​지시문은 특정 디렉터리에 매핑되는 URL 접두어를 정의한다는 점에서 Alias ​​지시문과 매우 유사합니다. Alias ​​및 ScriptAlias는 일반적으로 DocumentRoot 디렉터리 외부의 디렉터리에서 사용됩니다.

Alias와 ScriptAlias의 차이점은 ScriptAlias에는 해당 URL 접두사 아래의 모든 항목이 CGI 프로그램으로 처리된다는 추가 의미가 있다는 것입니다.

그래서 위의 예는 Apache에게 /cgi-bin/으로 시작하는 리소스에 대한 모든 요청은 /usr/local/apache2/cgi-bin/ 디렉터리에서 제공되어야 하며 CGI 프로그램으로 처리되어야 함을 알려줍니다.

예를 들어, http://www.example.com/cgi-bin/test.pl URL이 요청되면 Apache는 /usr/local/apache2/cgi-bin/test.pl 파일을 실행하려고 시도하고 출력을 반환합니다. 물론 파일이 존재하고 실행 가능해야 하며 특정 방식으로 출력을 반환해야 합니다. 그렇지 않으면 Apache가 오류 메시지를 반환합니다.

방법 2: ScriptAlias ​​디렉토리 외부의 CGI

보안상의 이유로 CGI 프로그램은 일반적으로 ScriptAlias ​​디렉토리로 제한됩니다. 이런 방식으로 관리자는 CGI 프로그램을 사용할 수 있는 사람을 엄격하게 제어할 수 있습니다. 그러나 적절한 보안 예방 조치를 취하면 CGI 프로그램을 임의의 디렉터리에서 실행할 수 없는 이유가 없습니다.

예를 들어, UserDir 지시어를 사용하여 사용자가 홈 디렉터리에 웹 콘텐츠를 가질 수 있도록 할 수 있습니다. 자신만의 CGI 프로그램을 갖고 싶지만 기본 cgi-bin 디렉토리에 액세스할 수 없다면 다른 곳에서 CGI 프로그램을 실행할 수 있어야 합니다.

모든 디렉터리에서 CGI 실행을 허용하려면 두 단계가 있습니다. 먼저, AddHandler 또는 SetHandler 지시문을 사용하여 cgi-script 처리기를 활성화해야 합니다. 둘째, ExecCGI는 Options 지시문에 지정되어야 합니다.

방법 3: 옵션을 사용하여 CGI 실행 허용

기본 서버 구성 파일의 옵션 지시어를 명시적으로 사용하여 특정 디렉터리에서 CGI 실행이 허용되도록 지정할 수 있습니다.

<Directory "/usr/local/apache2/htdocs/somedir">
    Options +ExecCGI
</Directory>

위 지시어는 Apache에게 알립니다. CGI 파일 실행을 허용합니다. 또한 어떤 파일이 CGI 파일인지 서버에 알려주어야 합니다. 다음 AddHandler 지시문은 cgi 또는 pl 확장자를 가진 모든 파일을 CGI 프로그램으로 처리하도록 서버에 지시합니다.

AddHandler cgi-script .cgi .pl

방법 4: 사용자 디렉터리

사용자 디렉터리에서 .cgi로 끝나는 모든 파일이 CGI 프로그램을 실행할 수 있도록 허용하려면, 다음 구성을 사용할 수 있습니다.

<Directory "/home/*/public_html">
    Options +ExecCGI
    AddHandler cgi-script .cgi
</Directory>

모든 것이 CGI 프로그램으로 처리될 사용자 디렉토리의 cgi-bin 하위 디렉토리를 지정하려면 다음 명령을 사용할 수 있습니다.

아아아아

위 내용은 Apache 서버는 어떻게 CGI 실행을 활성화합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
Apache의 역할 : HTML, CSS, JavaScript 등을 제공합니다Apache의 역할 : HTML, CSS, JavaScript 등을 제공합니다Apr 19, 2025 am 12:09 AM

Apache는 HTML, CSS, JavaScript 및 기타 파일을 제공 할 수 있습니다. 1) 가상 호스트 및 문서 루트 디렉토리를 구성, 2) 요청 수신, 프로세스 및 반환, 3) .htaccess 파일을 사용하여 URL 재 작성을 구현하기 위해, 4) 권한을 확인하여 디버그, 구성을보기 및 구성 테스트, 5) 캐시 활성화, 파일 압축 및 성능을 최적화합니다.

Apache로 알려진 것 : 주요 기능 및 업적Apache로 알려진 것 : 주요 기능 및 업적Apr 18, 2025 am 12:03 AM

Apachehttpserver는 모듈 식 설계, 높은 확장 성, 보안 및 성능 최적화를 위해 웹 서버 분야의 리더가되었습니다. 1. 모듈 식 설계는 다른 모듈을로드하여 다양한 프로토콜과 기능을 지원합니다. 2. 소규모에서 대형 응용 프로그램의 요구에 적응할 수있는 확장 성. 3. Security는 Mod_Security 및 여러 인증 메커니즘을 통해 웹 사이트를 보호합니다. 4. 성능 최적화는 데이터 압축 및 캐싱을 통해 로딩 속도를 향상시킵니다.

아파치의 지속적인 관련성 : 현재 상태를 조사합니다아파치의 지속적인 관련성 : 현재 상태를 조사합니다Apr 17, 2025 am 12:06 AM

Apachehttpserver는 안정성, 확장 성 및 풍부한 생태계 때문에 현대 웹 환경에서 중요합니다. 1) 안정성과 신뢰성은 고 가용성 환경에 적합합니다. 2) 넓은 생태계는 풍부한 모듈과 확장을 제공합니다. 3) 구성 및 관리가 쉽고 초보자에게도 신속하게 시작할 수 있습니다.

Apache의 인기 : 성공의 이유Apache의 인기 : 성공의 이유Apr 16, 2025 am 12:05 AM

Apache의 성공 이유는 다음과 같습니다. 1) 강력한 오픈 소스 커뮤니티 지원, 2) 유연성 및 확장 성, 3) 안정성 및 신뢰성 및 4) 광범위한 응용 시나리오. Apache는 커뮤니티 기술 지원 및 공유를 통해 유연한 모듈 식 설계 및 구성 옵션을 제공하여 다양한 요구에 따라 적응성과 안정성을 보장하며 개인 블로그에서 대기업 웹 사이트에 이르기까지 다양한 시나리오에서 널리 사용됩니다.

아파치의 유산 : 무엇이 유명한가?아파치의 유산 : 무엇이 유명한가?Apr 15, 2025 am 12:19 AM

apachebecamefamousduetoitsopen-sourcenature, modulardesign, andstrongcommunitysupport.1) itsopen-sourcemodelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandelandermisveAcelicenseencouraged.2) themodularArchiteCturealLowedForeXextenseVecustOmization.3) avibrantcommunit

아파치의 장점 : 성능과 유연성아파치의 장점 : 성능과 유연성Apr 14, 2025 am 12:08 AM

Apache의 성능과 유연성은 웹 서버에서 눈에 띄게 만듭니다. 1) 성능 장점은 효율적인 처리 및 확장성에 반영되며, 이는 다중 프로세스 및 다중 스레드 모델을 통해 구현됩니다. 2) 유연성은 모듈 식 설계 및 구성의 유연성에서 비롯되며, 모듈을로드하고 요구 사항에 따라 서버 동작을 조정할 수 있습니다.

Apache80 포트가 점유 된 경우해야 할 일Apache80 포트가 점유 된 경우해야 할 일Apr 13, 2025 pm 01:24 PM

Apache 80 포트가 점유되면 솔루션은 다음과 같습니다. 포트를 차지하고 닫는 프로세스를 찾으십시오. 방화벽 설정을 확인하여 Apache가 차단되지 않았는지 확인하십시오. 위의 방법이 작동하지 않으면 Apache를 재구성하여 다른 포트를 사용하십시오. Apache 서비스를 다시 시작하십시오.

Apache를 시작할 수없는 문제를 해결하는 방법Apache를 시작할 수없는 문제를 해결하는 방법Apr 13, 2025 pm 01:21 PM

다음과 같은 이유로 Apache가 시작할 수 없습니다. 구성 파일 구문 오류. 다른 응용 프로그램 포트와 충돌합니다. 권한 문제. 기억이 없습니다. 프로세스 교착 상태. 데몬 실패. Selinux 권한 문제. 방화벽 문제. 소프트웨어 충돌.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

PhpStorm 맥 버전

PhpStorm 맥 버전

최신(2018.2.1) 전문 PHP 통합 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는