Ubuntu Apache2 DefaultRuntimeDir은 ServerRoot에 대한 절대 또는 상대의 유효한 디렉터리여야 합니다.

Ubuntu Apache2 DefaultRuntimeDir은 ServerRoot에 대한 절대 또는 상대의 유효한 디렉터리여야 합니다.

.NET으로 설정하려고 하는 Ubuntu 17.04를 실행하는 웹 서버가 있습니다 Apache. virtualHosts를 통해 단일 시스템에서 두 개의 웹 사이트를 호스팅하기로 결정하기 전까지는 모든 것이 잘 작동했습니다. 이제 apache단일 호스트가 활성화된 상태에서도 시작을 거부합니다. 시작하려고 할 때마다 Apache다음 오류가 발생합니다.

apache2: Syntax error on line 80 of /etc/apache2/apache2.conf:
DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot.

이 문제를 해결하려는 나의 시도는 다음을 포함하여 아무것도 이루어지지 않았습니다.

apt purge apache2 && rm -r /etc/apache2 

오류 메시지의 모든 80행은 입니다 DefaultRuntimeDir ${APACHE_RUN_DIR}.

APACHE_RUN_DIR그리고 나는 어디에 또는 무엇이 선언되어 있는지 전혀 알 수 없습니다 .

누군가 나를 도와줄 수 있나요?

답변1

명령

source /etc/apache2/envvars

내 문제를 정리했습니다(다른 모든 문제를 시도한 후).

모든 것이 정상인지 확인하려면 다음 명령을 사용하십시오.

apache2 -S

내 DNS 레코드를 사용하는 것보다 더 빠르다는 것을 알았습니다.

답변2

적어도 -V 옵션에 대해 "man apache2"에 누락된 업데이트가 있습니다.

오늘은 대신 "apachectl"이나 "apache2ctl"을 사용해야 합니다.

명시된 대로 적어도 일부 옵션에 대해 "apache2"

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879571

답변3

Apache2는 /etc/apache2/envvars환경 변수를 설정하는 데 사용합니다. 이 정보를 사용하여 ${APACHE_RUN_DIR}가리키는 디렉터리가 유효한지 확인할 수 있습니다 .

14.04에서 17.04로 업그레이드하는 동안 동일한 문제가 발생했습니다. 문제는 ${APACHE_RUN_DIR}으로 설정되었지만 /var/run/apache2apache2 폴더가 에 없다는 것입니다 /var/run.

나를 위한 해결책은 다음과 같습니다.mkdir /var/run/apache2

답변4

제 경우에는 apache2.conf 파일의 "모두 거부됨 요구" 줄에 관한 것이었습니다. 제 경우에는 "거부됨 요구"로 입력되었습니다.

관련 정보