CGI(Common Gateway Interface)?
> 웹 서버(정보 제공)와 클라이언트(정보 이용) 간에 필요한 정보 교환을 가능하게 해주는 일종의 웹 인터페이스
> 동적 페이지 서비스를 제공하려고 만들어짐
> CGI 제작도구 = PHP, PERL, PYTHON, etc
☆ 참고 사이트 ( CGI 란? )
http://www.linux213.example.com --------------------------> /www1/index.html >코드를 요청.
http://www.linux213.example.com/cgi-bin/test.cgi -----------> /www1/cgi-bin/test.cgi > 실행시켜줘.
◇ 실습.
ⓐ 웹 디렉토리 및 index.html 파일 생성
# mkdir /www1
# vi /www1/index.html
1
2
3
4
5
6
7
8
9 |
<HTML>
<HEAD>
<title> hello test </title>
<HEAD>
</HEAD>
<BODY>
<center><h1> www1 (linux149:/www1) </h1></center>
</BODY>
</HTML> |
cs |
ⓑ 가상호스트 및 설정 적용
# vi /etc/httpd/conf/httpd.conf
1
2
3
4
5
6
7
8
9
10
11 |
#문서 제일 하단 부분에 추가.
NameVirtualHost 192.168.35.143:80
<VirtualHost 192.168.35.143:80>
ServerAdmin root@linux213.example.com
DocumentRoot /www1
ServerName www.linux213.example.com
<Directory /www1>
Options indexes includes
</Directory>
</VirtualHost> |
cs |
# httpd -t
If you pass the test of syntax
# service httpd restart
# lynx http://www.linux213.example.com
ⓒ ScriptAlias 설정
# vi /etc/httpd/conf/httpd.conf
1
2
3
4
5
6
7
8
9
10 |
NameVirtualHost 192.168.35.143:80
<VirtualHost 192.168.35.143:80>
ServerAdmin root@linux213.example.com
DocumentRoot /www1
ServerName www.linux213.example.com
<Directory /www1>
Options indexes includes
</Directory>
ScriptAlias /cgi-bin/ /www1/cgi-bin/ # 라인 추가
</VirtualHost> |
cs |
ⓓ test.cgi 파일 생성
# vi /www1/cgi-bin/test.cgi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 |
#!/bin/bash
echo "Content-Type: text/html"
echo ""
echo "<pre>"
echo "My username is : "
whoami # 명령어
echo ""
echo "My id is : "
id #
echo ""
echo "</pre> |
cs |
# chmod 555 /www1/cgi-bin/test.cgi < 실행권한이 있어야 한다.
# service httpd restart
# lynx http://www.linux213.example.com/cgi-bin/test.cgi
◇ Perl 스크립트 사용.
# rpm -qa mod_perl
If not installed the 'Perl' in your linux.
# yum -y install mod_perl
ⓐ 주 설정 파일 변경.
# vi /etc/httpd/conf.d/perl.conf
1
2
3
4
5
6
7
8 |
#
Alias /perl /var/www/perl
<Directory /var/www/perl>
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
</Directory> |
cs |
# service httpd restart
# firefox http://www.linux213.example.com/perl/test.pl
'Linux > NetAdmin' 카테고리의 다른 글
[CentOS5.11] 가상 호스트 설정. (0) | 2017.09.17 |
---|---|
[CentOS5.11] .htaccess 를 이용한 웹 보안. (0) | 2017.09.16 |
[CentOS5.11] 아파치(Apache) 웹 서버. (0) | 2017.09.16 |
[CentOS5.11] 간단한 웹 서버 구성 실습. (0) | 2017.09.16 |
[CentOS5.11] DNS Master, Slave 구축 실습. (0) | 2017.09.15 |