Apache/ko

"아파치 HTTP 서버"는 효율적이고 확장성있는 웹 서버이며 인터넷에서 가장 인기있는 웹 서버 중 하나입니다.

Emerge
As of 2016-01-08, Apache 2.4 is marked as testing. To install Apache 2.4, you'll need to make the following package.accept_keywords modifications.

If you want to use the Apache event MPM, then add the following to make.conf:

If you want to use the Apache worker MPM, then add the following to make.conf:

And, enable the Apache threads USE flag:

Then emerge Apache:

전역 지원
Enabling the  global USE flag provides support for Apache in other packages. This may cause to be installed automatically if a package depending on Apache has been emerged.

USE 변수를 설정한 후, 시스템을 업데이트하여 바뀐 설정을 적용하십시오.

파일
시스템에서 동작하는 아파치는 두가지 주요 파일에서 설정합니다:


 * Gentoo's Apache2 init script configuration file


 * 아파치2 서버의 기본 설정 파일은 입니다

위치에 있는 파일은 젠투 init 스크립트 설정 파일입니다. 이 파일에서 유일한 활성 행은 APACHE2_OPTS 변수 부분입니다:

이 줄에서는 전체 설정중 일부를 활성화 하거나 비활성화 하는  구문을 사용하여 다양한 설정 파일을 해석합니다. 나중에 이 게시글에서 다시 다루도록 하겠습니다.

아파치 서버의 기존 설정 파일 - httpd.conf
파일은 아파치 서버의 기본 설정 파일입니다. 사실 이 파일은 설정의 항목 포인트일 뿐입니다. 전체 설정은 디렉터리의 여러 파일로 나누어져있으며,   지시어로 합쳐집니다. 예를 들어 의  구문은 에서 로 끝나는 모든 파일을 대상으로 합니다.

위의 하위 섹션에서 언급한 내용을 고려하여, 모듈 설정 파일(/etc/apache2/modules.d의 파일)이 거의 항상 로 시작하므로, 일치하는 옵션을  파일의 APACHE2_OPTS 변수에서   플래그를 사용하여 설정하면 에 들어있는 파일 하나의 내용은 설정한 부분끼리만 모입니다. 설정 파일은  구문으로 시작하지 못했을 때 이 규칙에 대한 예외로 존재하므로 결과 설정에 항상 포함됩니다.

기본 설정
아파치를 새로 설치한 다음의 설정은 다음과 같이 여러가지 설정 파일의 모음으로 이루어져 있습니다. 의 항목 포인트에서 시작하도록 하겠습니다.

첫 생존 신호
위의 초기 설정내용에서 보셨다시피 이미 설치한 가상 호스트의  디렉터리는 서버 이름을 localhost로 지정한 입니다. index.html을 에서 설정하므로 모든 요소를 올바르게 설치했는지 여부를 보려면 http://www.localhost를 열어보십시오.

페이지에 "It works !" 메시지가 나타나야 합니다.

mod_security 활성화
를 설치하십시오:

파일의 APACHE2_OPTS 변수에  모듈을 활성화하십시오:

와 파일을 편집하여 모듈을 처리한 다음 아파치를 다시 시작하십시오.

PHP 지원 활성화
USE 플래그를 넣고 PHP를 설치한 다음 모듈을 활성화 하십시오:

PHP 모듈이 동작하는지 시험하기 전에 파일이 있는지, 다음 정의가  있는지 확인하십시오:

내용이 없으면 직접 입력하십시오.

PHP 모듈이 잘 동작하는지 확인하려면, 테스트 페이지를 만드십시오:

이제 를 숨기든지 이름을 바꾸시고  테스트 페이지를 여십시오.

표에서는 나타내고자 하는 PHP 설정을 보여줍니다.

PHP 버전 수정
아파치에서 다루는 PHP 버전을 바꾸려면, 우선  서버 애플리케이션 프로그래밍 인터페이스(SAPI) 목록에서 존재하는 버전을 확인하십시오:

선택할 버전으로 바꾸십시오:

위 예제에서 을 앞서 보여드린 eselect php list apache2 요청 출력 결과에 나타난 숫자 값으로 바꾸십시오.

가상 호스트
각각의 가상 호스트에 아파치 데몬에서 도달 및 접근 가능한  디렉터리를 제공하십시오. 이  와 가상 호스트 서버 이름을 제공하는  디렉터리의 가상 호스트 파일을 추가하십시오. 파일에 이 도메인 이름에 대한 항목을 추가하는 것을 잊지 마십시오.

아파치 가상 호스트 파일에 사용자/그룹 소유 권한을 할당하려면 다음과 같이 명령을 활용하십시오:

아래 두가지 가상 호스트 정의 예제에서 하나는 domainname1.com, 다른 하나는 domainname2.com에 대한 정의입니다. 호스트 부분은 같게 내버려 두지만, 와    지시자의 값은 다름을 눈여겨 보십시오:

이와 같이 IP 기반 가상 호스트 정의를 제공하는 것도 추천합니다. IP 주소를 통해 사이트에 접근하려는 사용자에게 관리자가 메시지를 뿌릴 수 있게 합니다.

가상 호스트를 넣은 다음, 서버는 새 사이트를 활성화 하기 위해 (적절하게) 재시작해야 합니다.

fcgid를 통한 PHP 활성화
와 를 설치하십시오. PHP 패키지에  USE 플래그를 넣어야 합니다:

파일을 편집하십시오:

필요한 디렉터리를 만드십시오:

PHP 래퍼에 대한 심볼릭 링크를 만드십시오:

FCGID 모듈을 활성화 하십시오:

마지막으로 아파치를 다시 시작하고 먼저 만든 페이지의  사이트가 뜨는지 확인하십시오. 값은 "CGI/FastCGI"여야 합니다.

아파치 2.4에서 mod_proxy_fcgi를 통한 PHP-FPM 활성화
The following pre-requisites must be satisfied to enable PHP-FPM through mod_proxy_fcgi:
 * >= PHP 5.3
 * >= Apache 2.4 (see Emerge section above for instructions on how to install Apache 2.4)

Furthermore, there are a few restrictions on the availability of functionality within Apache 2.4:
 * >= Apache 2.4.9, if you want to communicate with PHP-FPM over UNIX sockets
 * >= Apache 2.4.10, if you want to use SetHandler instead of ProxyPassMatch.

The following configuration will only work with Apache 2.4.10 and newer. It relies on the  directive and be placed within the main server config or. The location of the UNIX socket is determined by the  directive in the, allowing for specifying separate pools per site or function.

다음 예제에서는 아파치의 PHP 설정 파일에 해당 설정을 놓습니다.

Or, you can use ProxPassMatch -- the only option if the Apache version is between 2.4.0 and 2.4.8, inclusive.

기본적으로  지시어는 소켓에 설정하지 않습니다. 우선 소켓 파일을 저장할 디렉터리를 만드십시오:

다음 내용에 따라 파일을 업데이트하십시오:

PHP 모듈과 PROXY 모듈을 활성화하십시오:

OpenRC
아파치 서버를 시작하십시오:

기본 런레벨에 아파치를 추가하십시오:

아파치 서비스를 재시작하십시오:

아파치 설정 파일을 다시 읽으십시오:

systemd
아파치 서버를 시작하십시오:

기본 런레벨에 아파치를 추가하십시오:

아파치 서비스를 다시 시작하십시오:

참고 자료
아파치 서버를 제대로 설정하기엔 어려울 수 있습니다. 아래 참고자료는 문제가 있을 경우 도움될 수 있습니다:


 * 문제 해결 안내서en

시험
아파치2가 어떤 IP 인터페이스에서 실행하고 어떤 포트 상에서 감청하는지 확인하십시오:

로컬 호스트에서 아파치 서버 연결이 동작하는지 확인하십시오:

연결 시험을 그만두려면 + 키와 키를 누르십시오.

apr_sockaddr_info_get failed for 
오류:

apache2: apr_sockaddr_info_get failed for System_Hostname

해결책:

이 오류가 나타나면 파일에 호스트 이름을 추가하십시오:

추가 참조

 * Lighttpd - 빠르고 가벼운 웹 서버입.
 * Nginx - 작고 견고한 리버스 프록시 지원 고성능 HTTP 서버

외부 자원

 * Slicehost 게시물: 젠투에 아파치 설치하기
 * Slicehost 게시물: 젠투에서 아파치 설정하기
 * Slicehost 게시물: 젠투에서 아파치 MPM 설정하기
 * Slicehost 게시물: 젠투에서 아파치 설정하기
 * Slicehost 게시물: 젠투에서 아파치 가상 호스트 설정하기
 * Slicehost 게시물: 젠투에서 아파치 mod_status 활성화 하고 사용하기
 * apache.org 문서
 * 아파치 2 mod_pagespeed