소스 코드에서 아파치 아파치 컴파일 및 설치
대부분의 리눅스 배포판은 주 리포지토리에서 아파치 아파치 바이너리 패키지의 특정 버전을 제공한다. 단점은이 버전이 종종 다음 배포판의 주요 릴리스까지 업데이트되지 않는다는 것입니다.
최신 버전에서만 사용할 수 있는 기능을 활용하거나 사용자 정의 바이너리를 빌드하려면 소스 코드에서 아파치 아파치를 컴파일하고 설치하는 것이 간단합니다.그리고 뎁 기반(데비안,우분투,…) 최신 버전(2.4.엑스)사용.
아파치 아파치 소스 코드
이 자습서에서는 빌드 디렉터리로 사용됩니다.
아파치의 소스 코드는http://httpd.apache.org/download.cgi에서 타르 파일로 사용할 수 있습니다.
빌드 디렉터리에서 소스 코드를 다운로드하고 추출하는 단계는 다음과 같습니다.):
cd /usr/local/src/wget https://downloads.apache.org//httpd/httpd-2.4.43.tar.gztar -xzf httpd-2.4.43.tar.gzls -lcd httpd-2.4.43pwdls
빌드 종속성 설치
아파치 아파치를 컴파일하려면 개발 도구(컴파일러,링커,…)와 일부 추가 라이브러리를 설치해야 합니다.
필요한 라이브러리:
- apr
- apr-util
- openssl
- expat
- prce
대부분의 리눅스 배포판 제공에는 이러한 라이브러리에서 중요 저장소가 여기에 해당합니다. 시스템에 이전 버전의 라이브러리가 포함되어 있는 경우 해당 소스 코드를 별도로 다운로드하여 컴파일할 수 있습니다. 다음 섹션에서는 아파치 아파치 컴파일 프로세스의 일부로 라이브러리 4 월 및 4 월 유틸리티의 소스 코드를 다운로드하고 빌드하는 방법을 설명합니다.리눅스 배포판에서는 다음 명령을 사용하여 라이브러리 개발 패키지를 설치할 수 있습니다:
yum group install developmentyum install openssl-devel expat-devel pcre-devel apr-devel apr-util-devel
뎁 기반(데비안,우분투,…):
apt install build-essential libssl-dev libexpat-dev libpcre2-dev libapr1-dev libaprutil1-dev
빌드 구성 옵션
아파치 소스 코드 다운로드 및 빌드 종속성 설치 후 빌드 구성 옵션(컴파일러 옵션,설치 디렉토리,모듈 활성화/비활성화 등)을 설정할 수 있습니다.
아파치 아파치는 자동 구성 빌드 시스템을 사용하기 때문에 빌드 구성 옵션을 설정하고 메이크 파일을 생성하는 구성이라는 스크립트를 제공한다.
일부 조정이 필요하지 않으면 기본값이 유지 될 수 있습니다. 기본값은 대부분의 모듈을 컴파일하고 설치 디렉토리를/로컬/아파치 2/로 설정하는 것입니다.
기본값을 사용하려면 인수 없이 구성 스크립트가 호출됩니다:
cd /usr/local/src/httpd-2.4.43./configure
가능한 모든 옵션을 나열하려면 스크립트 구성이–도움말 인수로 호출됩니다:
cd /usr/local/src/httpd-2.4.43./configure --help
다음 섹션에서는 몇 가지 유용한 빌드 구성 옵션을 제공합니다.
설치 디렉토리:-접두사 옵션
설치 디렉토리가 빌드 디렉토리와 다릅니다. 컴파일이 성공하고 설치 만들기 명령이 실행되면 결과 바이너리 및 구성 파일이 배치되는 위치입니다(설치 섹션에 표시됨).
접두사 옵션은 다른 설치 경로를 선택하는 데 사용됩니다. 이 옵션은 아파치 아파치의 다른 버전을 빌드하고 설치해야 하는 경우에 유용합니다.
다음 예제에서는 설치 디렉토리를/옵트/아파치로 설정하는 방법을 제시한다-2.4.43/:
cd /usr/local/src/httpd-2.4.43./configure --prefix=/opt/apache-2.4.43/
모듈 활성화/비활성화 방법: -사용–모듈/-사용-모듈
대부분의 아파치 아파치 모듈은 기본적으로 동적 라이브러리로 작성된다. 모듈 사용 옵션을 사용하여 모듈을 사용하거나 빌드 유형을 동적에서 정적으로 변경할 수 있습니다. 모듈 사용 안 함 옵션은 모듈이 빌드되지 않도록 설정하는 데 사용됩니다. 모듈은 실제 모듈 이름으로 대체됩니다.
다음 예제는 정적 라이브러리로 모듈 재 작성을 빌드하는 방법을 보여줍니다:
cd /usr/local/src/httpd-2.4.43./configure --enable-rewrite=static
컴파일러 옵션
필요한 경우 컴파일러 옵션이 환경 변수로 구성 스크립트에 전달됩니다.
변수는 다음 표에 요약되어 있습니다:
컴파일러 명령을 선택하는 데 사용됩니다. 기본값 cc(GNU 컴파일러)그러나 그 소가 너무 옵션 | |
CFLAGS | 전달하는 데 사용하는 C 컴파일러 플래그 |
LDFLAGS | 전달하는 데 사용되는 linker flags |
LIBS | 전달하는 데 사용되는 라이브러리 링커 |
CPPFLAGS | 전달하는 데 사용됩(목적)C/C++preprocessor flags |
CPP | 전달하는 데 사용됩 C 전처리기는 매개변수 |
다음 예는 어떻게 전달하는 깃발 최적화하는 C 컴파일러:
cd /usr/local/src/httpd-2.4.43export CFLAGS=-o2./configure
컴파일 및 설치
빌드 구성 옵션을 설정하고 메이크 파일 파일을 생성하기 위한 구성 스크립트를 실행한 후 메이크 명령으로 컴파일 프로세스가 시작됩니다.
다음 예제에서는 컴파일 프로세스를 시작하는 방법을 보여 줍니다:
cd /usr/local/src/httpd-2.4.43./configuremake
컴파일이 성공하면 다음 명령으로 설치 디렉터리에 설치를 시작할 수 있습니다:
make install
설치가 필요한 모든 바이너리 및 구성 파일을 설치 디렉토리/로컬/아파치 2 에 배치합니다. 실행 파일은 로컬/아파치 2/빈/에 배치됩니다. 구성 파일은 다음과 같습니다.
컴파일된 모듈 나열 방법
컴파일된 모듈은 다음 명령을 사용하여 나열될 수 있습니다:
/usr/local/apache2/bin/httpd -M
서비스 시작 및 중지
아파치 아파치의 새로운 빌드는 명령/사용자/로컬/아파치 2/빈/아파치펙틀을 사용하여 시작할 수 있다.
서비스 시작:
/usr/local/apache2/bin/apachectl start
서비스 중지:
/usr/local/apache2/bin/apachectl stop
소스 코드에서 4 월 및 4 월 유틸리티 구축
아파치 아파치 컴파일에 필요한 라이브러리는 리눅스 배포판의 메인 리포지토리에서 설치할 수 있지만,경우에 따라 아파치 아파치는 이러한 리포지토리에서 사용할 수 없는 최신 버전의 라이브러리를 필요로 한다. 이 경우 라이브러리의 소스 코드를 아파치 아파치와 함께 다운로드하여 컴파일할 수도 있습니다.
4 월 라이브러리와 4 월 유틸리티 라이브러리는 아파치 아파치가 여러 운영 체제에서 이식성을 보장하기 위해 내부 작업에 의존하는 핵심 라이브러리 중 두 가지이다.
아파치 소스 코드에는 이 서브디렉토리가 포함되어 있다. 시스템 라이브러리를 사용하는 대신 서버에서 빌드하고 사용할 수 있는 라이브러리를 보유하는 데 사용됩니다.
4 월 및 4 월 유틸리티 라이브러리의 소스 코드를 통합하기 위해 아파치 아파치의 컴파일 프로세스의 일부로 소스 코드를 다운로드하여 서브디렉토리 내에서 추출한다.
다음 예제에서는 두 라이브러리 4 월 및 4 월 유틸리티의 소스 코드를 다운로드하고 추출하는 방법을 보여 줍니다. 타르 파일이 추출될 때,버전 번호는 밖으로 벗겨져야 한다.그들은 공식 웹 사이트에서 다운로드 할 수 있습니다:https://apr.apache.org/download.cgi.
cd /usr/local/src/httpd-2.4.43/srclib/wget https://downloads.apache.org/apr/apr-1.7.0.tar.gztar -xzf apr-1.7.0.tar.gzmv apr-1.7.0 aprlswget https://downloads.apache.org/apr/apr-util-1.6.1.tar.gztar -xzf apr-util-1.6.1.tar.gzmv apr-util-1.6.1 apr-utillscd /usr/local/src/httpd-2.4.43./configuremakemake install
버전 2 에서 업그레이드하는 방법.에 2.소스 코드에서 설치한 아파치 아파치를 업데이트할 수 있다. 각 버전에 대해 별도의 설치 디렉터리를 사용하고 이전 버전의 구성 하위 디렉터리를 새 디렉터리로 복사하는 것이 좋습니다.
다음 예제에서는 이미 설치된 버전 2.4.0 을 아파치 2.4.43 에 설치할 최신 버전 2.4.43 으로 업데이트하는 방법을 보여 줍니다.
새 버전을 다운로드,컴파일 및 설치하려면:
cd /usr/local/src/wget https://downloads.apache.org//httpd/httpd-2.4.43.tar.gztar -xzf httpd-2.4.43.tar.gzcd httpd-2.4.43./configure --prefix=/usr/local/apache-2.4.43makemake install
이전 버전에서 서비스 중지:
/usr/local/apache-2.4.0/bin/apachectl stop
이전 버전의 디렉터리에서 새 버전의 디렉터리로 구성 디렉터리를 복사합니다:
rm -rf /usr/local/apache-2.4.43/conf/cp -rp /usr/local/apache-2.4.0/conf/ /usr/local/apache-2.4.43/
새 버전에서 서비스 시작:
/usr/local/apache-2.4.43/bin/apachectl start