Mint17의 소스에서 'apache2'를 빌드한 후 'a2dissite' 및 'a2ensite'를 찾을 수 없습니다.

Mint17의 소스에서 'apache2'를 빌드한 후 'a2dissite' 및 'a2ensite'를 찾을 수 없습니다.

건축 후아파치2 http 서버소스에서 (2.4.23a2dissite) 및 명령이 없습니다 a2ensite.

구성은 다음과 같습니다.

./configure --with-included-apr --prefix=/usr/local/apache2

내가 실행할 때 :

whereis apache2

나는 얻다:

apache2: /etc/apache2 /usr/local/apache2

하지만 which apache2아무것도 표시되지 않습니다. 어쩌면 심볼릭 링크가 필요할 수도 있습니다 /usr/bin. http://localhost잘 작동합니다.

소스 버전 정보:

/usr/local/apache2/bin/apachectl -v Server version: Apache/2.4.23 (Unix) Server built: Nov 1 2016 22:52:26

리눅스 버전:

linux mint 17
3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 x86_64 

답변1

Apache Software Foundation에서 제공하는 소스를 사용하여 빌드한 것 같습니다. 스크립트 a2en...(및 지원 구성)는 데비안에 따라 다릅니다. 해당하는 소스 코드를 찾을 수 있습니다.데비안 저장소.

소스에서 서버 를 구축 httpd하고 계속 사용할 수 있는 가장 좋은 방법 a2ensite은 데비안 소스 패키지를 사용하는 것입니다:

sudo apt-get install devscripts dpkg-dev build-essential
sudo apt-get build-dep apache2
dget http://httpredir.debian.org/debian/pool/main/a/apache2/apache2_2.4.23-5.dsc
cd apache2-2.4.23
dpkg-buildpackage -us -uc

처음 두 명령은 빌드에 필요한 패키지를 설치합니다 apache2. 그런 다음 dget소스 패키지를 다운로드 및 추출하고 이를 빌드하여 평소처럼 수동으로 설치할 수 있는 dpkg-buildpackage일련의 패키지를 생성합니다 ..debdpkg

라인 build-dep이 작동하지 않으면 다음은 다음과 동일합니다 apache2.

sudo apt-get install debhelper lsb-release libaprutil1-dev libapr1-dev libpcre3-dev zlib1g-dev libnghttp2-dev libssl-dev perl liblua5.2-dev libxml2-dev autotools-dev gawk dh-systemd

답변2

에 심볼릭 링크를 연결하지 마십시오 /usr/bin. 그것은 매우 나쁜 생각이므로 그렇게 해서는 안 됩니다.

왜? /usr을 포함한 대부분의 은 /usr/bin패키지 관리자용으로 예약되어 있기 때문입니다. 당신을 포함해 패키지 관리자가 아닌 것은 그 안에 있는 것들을 건드려서는 안 됩니다.

/usr/local로컬로 컴파일된 소프트웨어를 설치할 수 있는 장소를 제공하기 위해 존재합니다. 일반적으로 . /usr/local대신 접두사로 제공합니다 /usr/local/apache2. (그런데 접두사는 bin 경로, 라이브러리 경로 등에 접두사가 붙는 것입니다. 예를 들어 Apache의 명령줄 도구는 $PREFIX/bin, 라이브러리는 에 들어갈 것입니다 $PREFIX/lib/apache2.)

문제에 대한 해결책은 /usr/local/apache2/bin쉘이 바이너리를 찾기 위해 사용하는 경로 목록에 추가하는 것입니다. 이는 일반적으로 간단히 "사용자 경로"라고 하며 $PATH다음과 같은 명령으로 변경할 수 있습니다.

export PATH="/usr/local/apache2/bin:$PATH"

이를 쉘의 시작 파일 중 하나에 넣어 영구적으로 만들 수 있습니다.

그런데도 당신은 여전히 a2ensite​​또는 을 찾지 못할 것 같습니다 a2dissite. 내가 정확하게 기억한다면 이 두 명령은 모두 데비안 개발자가 추가한 다음 Mint가 상속한 것입니다. 따라서 업스트림 Apache 소스 코드에는 포함되지 않습니다. 스티븐 키트의훌륭한 답변이러한 명령을 얻는 방법을 알려 드리겠습니다.

관련 정보