2009-12-16 1 views
2

웹 서버의 cgi-bin 폴더/디렉토리에 어떤 파일을 저장해야합니까 /하지 말아야합니까?cgi-bin 디렉토리 내용 : CGI 스크립트/실행 파일과 별도로 그 밖에 저장할 수있는 항목은 무엇입니까?

분명히 웹 브라우저에서 호출되는 웹 응용 프로그램을 구성하는 실행 가능한 스크립트/파일을 여기에 저장할 수 있습니다.

하지만 거기에 저장할 수있는 다른 업계 공통 의견이 있습니까?

스크립트/실행 파일 이외에 다른 어떤 것도 허용되지 않는 이유는 무엇입니까?

필자가 선호하는 것은 응용 프로그램에 속한 모든 파일을 하위 응용 프로그램 인 cgi-bin 디렉토리/폴더에 각 응용 프로그램에 저장하는 것입니다.

예 디렉토리의 cgi-빈 /에서는 MyApplication를 들어 포함됩니다 :

  • 는 CGI 스크립트/실행
  • 데이터 파일을
  • 구성 파일

이 설치를 단순화하고 또한 단계를 단순화 병렬로 다른 버전의 응용 프로그램을 실행하십시오. 새 버전을 시험 삼아.

스크립트 파일이 아닌 파일에 대한 보안 액세스에 대한 우려는 올바른 사용자 권한과 Apache .htaccess를 사용하여 디렉터리 및 파일에 대한 액세스를 제어함으로써 해결할 수 있습니다.

널리 사용되는 무료 응용 프로그램은이 모든 것 - 아래 - 하나 - 디렉토리 접근 방식을 선호하는 것 같습니다 : bugzilla의 버전, 무료 결함 및 기능 추적 도구. 3.4.4는이 구조에서 제공되는 반면, 이전 버전 (예 : 2.x는 적어도 3 개의 폴더에 bugzilla 구성 요소를 설치했습니다.

강력하고 인기있는 무료 컨텐트 관리 시스템 인 Drupal은 cgi-bin 폴더를 사용하지 않지만 접근 방식은 동일하지만 모든 것에서이 접근 방법을 취합니다.

귀하의 의견은 무엇입니까?

답변

2

cgi-bin 폴더에는 특별한 것이 없습니다. 이것은 "allow-script"플래그가 설정된 공개적으로 접근 가능한 웹 폴더와 비슷합니다. PHP/JSP 등 세계에서 거의 무의미 해졌습니다.

웹 루트 아래의 폴더에 공개하려는 파일 만 저장해야합니다. 데이터 및 설정을 인터넷상의 모든 사용자가 다운로드 할 수 없으므로/cgi-bin에 보관하지 마십시오.

특정 서버는 요청시/cgi-bin에있는 파일을 시도하고 실행할 수 있습니다 . 특히 텍스트 또는 데이터 파일이 쉘 스크립트로 실행되는 경우 문제가 발생할 수 있습니다.

Drupal과 같은 응용 프로그램은 웹 호스트에 대한 사용 권한에 관계없이 누구나 쉽게 설치할 수 있습니다. 이것이 모든 것을 하나로 묶는 주된 이유입니다. 원하는 곳에 파일을 넣을 수있는 능력이 있다면 비공개 파일을 웹 루트 외부에 두는 것이 좋습니다. 웹 루트 아래에 보관해야하는 경우 서버 구성을 사용하여 비공개 파일에 대한 공용 액세스를 거부하십시오.

관련 문제