Apache의 httpd.conf

디렉터리별 사용자 권한 부여

.

.htaccess 사용할 파일을 지정하는 부분입니다.

구성 파일을 입력하고 디렉터리 구성 아래에 AuthConfig 옵션을 추가합니다.

.

AllowOverrideAuthConfig

.

AuthName “로그인”

인증 유형 기본

AuthUserFile /디렉토리 경로/.htpasswd

AuthGroupFile /dev/null

유효한 사용자가 필요합니다

유효한 사용자 필요

================================================== =====================

디렉토리 목록 숨기기(인덱스…)

.

방법 1. 각 디렉토리에 색인 파일 배치

방법 2. Apache 설정 변경

전역 설정

로컬(가상) 설정

변경 전(디렉토리 목록 표시)

.

옵션 지수 SymLink 팔로우

AllowOverrideAll

.

변경 후(디렉토리 목록이 보이지 않음)

.

옵션 FollowSymLinks

AllowOverrideAll

.

옵션 – Indexes FollowSymLinks

AllowOverrideAll

================================================== =====================

CGI 스크립트로 사용하기 위한 Python 설정

.

# DirectoryIndex: Apache가 디렉토리에서 제공하는 파일 지정

# 요청드립니다.

#

디렉토리 인덱스 index.html index.py

.

.

#

# AddHandler를 사용하면 특정 파일 확장자를 “처리기”와 연결할 수 있습니다.

# 파일 형식과 관련 없는 작업. 이들은 서버에 구축될 수 있습니다.

# 또는 action 지시문과 함께 추가됨(아래 참조)

#

# ScriptAliased 디렉토리 외부에서 CGI 스크립트를 사용하려면:

# (“Options” 디렉티브에 “ExecCGI”도 추가해야 합니다.

)

#

AddHandler CGI 스크립트 .cgi .py

.

================================================== =====================

내부 서버 오류(500)

.

여러 가지 원인이 있을 수 있습니다.

.

올바른 헤더가 제공되지 않은 경우

1. CGI 스크립트에 오류가 있는 경우

2. CGI 스크립트에 오류는 없으나 환경에서 설정한 문자가 제대로 설정되지 않은 경우

3. Python CGI 스크립트에 한글이 포함된 경우 Python 모듈 os를 사용하여 현재 설정된 환경 변수를 확인합니다.

.

인쇄(os.environ(‘LONG’))

.

결과적으로 다음과 같이 환경 변수가 구성 파일에 전달됩니다.

Python 스크립트에서 os.environ(‘LANG’)을 실행할 때 한글이 포함된 스크립트를 utf-8로 올바르게 설정해야 스크립트를 읽을 수 있습니다.

.

SetEnv LANG en_US.UTF-8

================================================== =====================

파일/폴더 이름이 잘린 경우

.

위와 같이 파일이나 폴더 이름이 길면 잘려서 보일 수 있습니다.

이때 다음과 같이 구성 파일의 IndexOptions 지시문에 NameWidth 옵션을 설정합니다.

NameWidth 옵션의 값은 숫자로 지정할 수 있지만 별표

로 지정된 경우 표시할 모든 파일 또는 폴더 이름에 충분한 가로 길이를 제공하는 것을 의미합니다.

모든 이름이 여기에 나타나기를 원하므로 별표

들어갔다

.

IndexOptionsNameWidth=*

================================================== =====================

다이제스트 인증(HTTP 다이제스트 인증)

.

– 기본 인증보다 보안이 강화된 인증 방식입니다.

– 사용자 이름과 암호의 조합으로 생성된 md5 값을 인증에 사용합니다.

-mod_auth_digest 모듈을 사용합니다.

.

vi /usr/local/apache/conf/extra/httpd-auth_digest.conf

================================================== =====================

인증 유형 다이제스트 AuthName “개인 영역”

인증 다이제스트 도메인

http://www.asdasdad.com/digest/

AuthUserFile /usr/local/apache/.htdigest

유효한 사용자가 필요합니다

거부 명령, 허용

모두에게 거부됨

(IP 또는 모두)에서 허용

================================================== =====================

다이제스트 인증을 적용할 디렉터리

.

인증 유형 다이제스트

인증 방법을 Digest로 설정

.

AuthName “개인 영역”

-인증 화면에서 사용자에게 제시되는 메시지

– 콘텐츠는 사용자 생성 시 영역으로 사용됩니다.

.

인증 다이제스트 도메인

http://www.asdasdad.com/digest/

다이제스트 인증으로 보호할 URL

.

AuthUserFile /usr/local/apache/htdocs/digest/.htdigest

사용자 비밀번호가 저장된 파일의 경로

.

유효한 사용자가 필요합니다

.htdigest에 등록된 사용자에게만 접근 허용

================================================== =====================

.

htdigest -c /usr/local/apache/htdocs/digest/.htdigest ‘개인 영역’ 웹 관리자

.

공간의 비공개 섹션에 웹 관리자의 비밀번호를 추가합니다.

새 비밀번호:

새 비밀번호를 다시 입력하십시오.

================================================== =====================

htdigest -c (정보가 저장되는 파일 이름) (‘realm’) (사용자)

– 다이제스트 인증을 사용할 사용자를 생성합니다.

– 구성 파일과 일치하는 파일 이름 및 영역을 입력합니다.

-Realm은 사용자가 속한 영역을 나타냅니다.

.

/usr/local/apache/bin/apachectl -t

systemctl은 apachectl을 다시 시작합니다.

.

mkdir /usr/local/apache/htdocs/digest

cd /usr/local/apache/htdocs/다이제스트

.

ll /usr/local/apache/htdocs/digest 인증에 성공하면 사용자에게 보여지는 초기 화면 파일을 생성합니다.

index.html .

http://www.asdasdad.com/digest

부착

다이제스트 인증 성공!
(index.html 파일의 내용 출력)