CGI는 공통 게이트웨이 인터페이스입니다. 이름에서 알 수 있듯이 모든 것에 대한 "공통"게이트웨이 인터페이스입니다. 그것은 이름에서 너무 사소하고 순진합니다. 나는 이것을 이해하고이 단어를 만날 때마다 이것을 느꼈다. 그러나 솔직히, 나는하지 않았다. 여전히 혼란 스러워요.
웹 개발 경험이있는 PHP 프로그래머입니다.
웹 서버 (-> 내장 PHP 인터프리터) ----> 서버 측 (PHP) 스크립트 ---> MySQL 서버에 대한 사용자 (클라이언트) 요청.
이제 PHP 스크립트가 MySQL 서버 및 MATLAB 서버 및 다른 서버에서 결과를 가져올 수 있다고 가정하십시오.
이제 PHP Script가 CGI입니까? 웹 서버와 다른 모든 서버 간의 인터페이스 때문에? 모르겠어요 때때로 그들은 기술인 CGI를 부르고 다른 때는 CGI를 프로그램이나 다른 서버라고 부르기도합니다.
CGI 란 정확히 무엇입니까?
큰 문제는
/cgi-bin/*.cgi
무엇입니까? 이게 뭐야?cgi-bin
서버 에서이 디렉토리 가 무엇인지 모르겠습니다 . 왜 * .cgi 확장자를 가지고 있는지 모르겠습니다.왜 펄은 항상 방해가됩니까? CGI & Perl (언어). 나는 또한이 두 가지에 무슨 일이 일어나고 있는지 모른다. 거의 항상 "CGI & Perl"조합으로이 두 가지를 계속들을 수 있습니다. 이 책은 Perl을 사용한 또 다른 훌륭한 CGI 프로그래밍 예제 입니다. 왜 "PHP / JSP / ASP로 CGI 프로그래밍"을하지 않습니까? 나는 그런 것들을 본 적이 없다.
C의 CGI 프로그래밍 은 나를 혼란스럽게합니다. " in C "?? 진심으로 ?? 무슨 말을해야할지 모르겠습니다. 난 그냥 혼란스러워 " in C "?? 이것은 모든 것을 바꿉니다. 프로그램을 컴파일하고 실행해야합니다. 이것은 웹 프로그래밍에 대한 나의 견해를 완전히 바꾼다. 언제 컴파일합니까? 프로그램은 어떻게 실행됩니까 (머신 코드이므로 독립적 인 프로세스로 실행해야합니다). 웹 서버와 어떻게 통신합니까? IPC? 소켓 프로그래밍을 사용하여 모든 서버 (내 예제 MATLAB 및 MySQL)와 인터페이스합니까? 나는 길을 잃었다!
사람들은 CGI가 더 이상 사용되지 않으며 더 이상 사용되지 않는다고 말합니다. 그렇습니까? 최신 업데이트는 무엇입니까?
일단 웹 서버 (Apache HTTPD)에 대한 HTTP PUT 요청 액세스 권한을 부여해야하는 상황이 발생했습니다. 오래 전입니다. 그래서 내가 기억하는 한 이것은 내가 한 일입니다.
웹 서버가 모든 HTTP PUT 요청을 일부에게 전달하도록 Apache HTTPD의 구성 파일을 편집했습니다
put.php
(이 PHP 스크립트를 작성해야 함)put.php를 구현하여 요청을 처리합니다 (파일을 언급 된 위치에 저장)
사람들은 내가 CGI 스크립트를 작성했다고 말했습니다. 진지하게, 나는 그들이 무엇에 관해 이야기하고 있는지 전혀 모른다.
- CGI 스크립트를 실제로 작성 했습니까?
내 혼란이 무엇인지 이해했으면 좋겠습니다. (내가 어디에 혼란 스러울 지 모르기 때문에). 답변을 가능한 한 단순하게 유지하도록 요청합니다. 정말 멋진 기술 용어를 이해할 수 없습니다. 적어도이 경우에는 그렇지 않습니다.
편집하다:
이 놀라운 튜토리얼 "CGI Programming Is Simple!"을 찾았습니다 . - 가장 간단한 방법으로 개념을 설명하는 CGI 튜토리얼 . 이 기사를 읽은 후 실제 코드 샘플에 대한 이해를 돕기 위해 C에서 CGI 프로그래밍 시작하기 를 읽어보십시오 . 또한이 튜토리얼에 대한 링크를 Wikipedia의 기사에 추가했습니다. http://en.wikipedia.org/wiki/Common_Gateway_Interface