사용자에게 웹사이트를 제공하기 위해 필요한 지시어는 UserDir 이고, mod_userdir 모듈이 제공하는데 이 모듈은 httpd 패키지를 설치하면 사용 가능합니다. CGI 테스트를 위해 python으로 테스트 하겠습니다.
우선 apache 서버에서 사용자에게 웹사이트를 제공하기 위한 디렉토리 관련 설정을 해줘야 합니다.
명령어
1 #vim /etc/httpd/conf.d/userdir.conf
--설명 : 소수의 사용자에게 UserDir을 허용하는 경우 설정
2 UserDir disabled
3 UserDir enabled jhuser
--설명 : 대부분의 사용자에게 UserDir을 허용하고 일부만 거부하는 경우
4 UserDir enabled
5 UserDir disabled root jhuser
--설명 : 모든 사용자에게 UserDir을 허용하는 경우
6 #UserDir disabled
7 UserDir pubic_html
8 <Directory "/home/*/public_html">
9 Options +ExecCGI
10 AllowOverride None
11 Require method GET POST OPTIONS
12 </Directroy>
13 #systemctl restart httpd
명령어 설명
1 vim 으로 UserDir 설정 파일을 열어 줍니다.
2~3 jhuser에게 UserDir 을 허용하는 설정입니다.
4~5 root jhuser 을 제외한 사용자에게 UserDir을 허용하는 설정입니다.
6~12 모든 사용자에게 UserDir을 허용하는 설정입니다. 9번은 일반 사용자의 웹사이트에서도 CGI 사용을 허가하는 설정이고, 11번은 디렉토리 접근 제어를 위해 사용하는 파일 .htaccess를 읽어 들일지를 결정하는 지시어인데, 옵션이 None 인 경우 그 파일이 있어도 무시하라는 뜻 입니다.
13 설정을 적용하기 위해 apache를 재시작 해줍니다.
이제 사용자의 홈 디렉토리에서 웹사이트를 생성하기 위한 준비를 해야합니다. 테스트를 위해서 사용자 jhuser의 홈 디렉토리를 사용하겠습니다.
명령어
1 #chmod 755 /home/jhuser
2 #mkdir public_html
3 #chmod 755 public_html/ ; cd public_html
4 #vim index.py
5 #!/usr/bin/env python
6 print "Content-type: text/html\n\n"
7 print "<html>\n<body>"
8 print "<div style=\"width: 100%; font-size: 80px; font-weight: bold; text-align: center;\">"
9 print "CGI Test page for jhuser in www.test.com/~jhuser/"
10 print "</div>\n</body>\n</html>"
명령어 설명
1 jhuser의 홈 디렉토리 접근을 위해 권한을 변경해줍니다.
2 웹 사이트에 제공할 디렉토리를 생성해줍니다.
3 웹에서 CGI 파일에 접근할 수 있도록 권한을 조정해주고 디렉토리로 이동합니다.
4 테스트를 위해 파이썬 파일을 생성해줍니다.
5~10 클라이언트에게 보여줄 페이지를 작성해줍니다.
이제 브라우저에서 url www.test.com/~jhuser/index.py 로 접근하면 "CGI Test page for jhuser in ww.test.com/~jhuser/" 을 볼 수 있고, UserDir과 CGI 테스트가 정상적으로 작동하는 것을 확인 할 수 있습니다.
'System engineer' 카테고리의 다른 글
CentOS 설치 시 Black Screen 증상이 발생하며 멈추는 증상 (0) | 2019.08.21 |
---|---|
Alteon L4 기본 설정/로드밸런싱 설정/간단한 정보 확인 (2) | 2019.07.11 |
apache CGI 파이썬(python) 사용_간단한 파일 생성과 url 테스트 (0) | 2019.06.13 |
apache CGI Ruby 사용 방법_테스트 페이지 생성과 url 테스트 (0) | 2019.06.13 |
apache CGI Perl 사용_ 간단한 파일 생성 및 URL 테스트 (0) | 2019.06.12 |