Apache를 다시 시작할 수 없습니다


71

다음 명령을 사용하여 터미널에서 아파치를 다시 시작하려고합니다.

 sudo service apache2 restart

해당 명령을 실행할 때 오류가 발생하지 않습니다.

Job for apache2.service failed. See "systemctl status apache2.service" and "journalctl -xe" for details.

실행시 "systemctl status apache2.service"가 출력을 얻지 못함

apache2.service - (null)
   Loaded: loaded (/etc/init.d/apache2)
   Active: failed (Result: exit-code) since Sat 2015-05-30 02:22:41 IST; 12s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4866 ExecStart=/etc/init.d/apache2 start (code=exited, status=1/FAILURE)

아파치 error.log

AH00489: Apache/2.4.12 (Unix) configured -- resuming normal operations
AH00094: Command line: '/usr/local/apache2/bin/httpd'

6
apache2 restart를 실행하고 오류가 발생하면 실행 sudo journalctl -xe하여 발생한 상황에 대한 더 나은 아이디어를 제공합니다. 여전히 이해하는데 문제가 있다면. 여기에 결과를 게시하십시오.
grag42

승인. 그것은 나에게 도움이되지 않았다. 아파치 로그 파일에있는 내용 /var/log/apache2/error.log
grag42

@ grag42 귀하의 제안에 감사드립니다. sudo journalctl -xe를 실행하고 다시 작성 규칙 문제가 있음을 발견하고 수정했습니다.
Gautam Savaliya

4
의 가능한 중복 아파치는 시작하지
목장

3
@rancho : 질문이 중복되었다고 믿는 이유는 무엇입니까? 링크 된 질문에는 여기에없는 매우 구체적인 오류 메시지가 포함되어 있습니다. OP 문제의 가능한 원인은 현재 분명하지 않습니다.
David Foerster

답변:


61

아마도 이것이 원인을 찾는 데 도움이 될 것입니다.

journalctl | tail

제 경우에는 구성 파일에서 실수였습니다.

AH00526: Syntax error on line 5 of /etc/apache2/sites-enabled/mydomain-wsf.lan.conf

6
No journal files were found.
Stevie G

5
@StevieG, 시도sudo journalctl | tail
Dherik

1
문제를 해결하기 위해 무엇을 했습니까?
Léo Léopold Hertz 준영

제 경우에는 apache2.config 파일에서도 실수를했습니다
alamin

감사. 새로 추가 된 사이트 conf에 대한 디렉토리를 잘못 입력했습니다.
Lynnell Emmanuel Neri

48

파일에 구문 오류가 있습니다 apache2.conf.

터미널에서 다음을 입력하십시오.

cd /etc/apache2

그때:

apache2ctl configtest

apache2.conf파일 에서 오류 가 수정 될 위치 를 알려줍니다.


1
훌륭한 접근 방식 tnx, 시간 절약
George Garchagudashvili

1
이건 끝내줘.
abalter

1
감사. redmine 및 PassengerResolveSymlinksInDocumentRoot 옵션에 문제가있었습니다.
Vadim

롤 후 실행 : apache2ctl configtest구문 확인 없어,하지만 난 실행할 때이 apache2 --help가지고 apache2: Syntax error on line 82 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot 와 아파치하는 error.log에 오류!
Vladimir Ch

/etc/apache2/sites-enabled/dir을 자세히 본 후 site.conf + reinable mod php5.6 (sudo a2dismod php5.6; sudo a2enmod php5.6)에 심볼릭 링크가 아닌 파일이 있음을 알았습니다. 내 서비스 apache2는 "ohh- ahh "
Vladimir Ch

18

문제는 일부 구성 파일이 삭제되었으므로 다시 설치해야합니다.

APACHE2 재설치 :

패키지를 제거하지 않고 삭제 된 구성 파일을 바꾸려면 다음을 수행하십시오.

sudo apt-get -o DPkg::Options::="--force-confmiss" --reinstall install apache2

apache2 구성 파일을 완전히 제거하려면 다음을 수행해야합니다.

sudo apt-get purge apache2

그런 다음 일반적인 방법으로 다시 설치할 수 있습니다.

sudo apt-get install apache2

모든 구성 파일을 제거하려면 제거가 필요합니다. 구성 파일을 삭제하고 패키지 만 제거하면 구성 파일이 기억되며 누락 된 구성 파일은 기본적으로 다시 설치되지 않습니다.

그런 다음 PHP5를 다시 설치하십시오.

apt-get purge libapache2-mod-php5 php5 && \
apt-get install libapache2-mod-php5 php5

1
일부 구성 파일이 삭제 된 이유는 무엇입니까?
Léo Léopold Hertz 준영

2

문제:

Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.

해결책:

  • apache2 구성 파일을 완전히 제거하려면 다음을 수행해야합니다.

    1) sudo apt-get purge apache2

  • 그런 다음 일반적인 방법으로 다시 설치할 수 있습니다.

    2) sudo apt-get install apache2

==> 잘 작동합니다 ...

감사....


2

가상 호스트를 제거한 후 동일한 오류가 발생했습니다. 문제는에 위치한 해당 호스트와 관련된 SSL conf 파일이 남아있었습니다 /etc/apache2/sites-enabled. SSL은 Let 's Encrypt를 통해 제거 할 코드는 다음과 같습니다.

sudo rm yourdomain.com-le-ssl.conf

1

.htaccess로 작업하는 동안 동일한 오류가 발생했습니다.

난 그냥이 명령을 넣어

<Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
</Directory>

에서 /etc/apache2/sites-enabled/000-default.conf이 폴더

이것을 추가하면 오류가 발생합니다.

그런 다음 파일에서 이러한 명령의 평화를 삭제하면 오류가 해결되었습니다.


1

구문 오류가있을 가능성이 큽니다. 나를 위해 그것은 '사이트 가능'폴더에있었습니다.

'ServerAlias'의 철자를 'ServerAlisa'로 잘못 입력했습니다.


내 폴더의 철자가 틀 렸습니다.
Lynnell Emmanuel Neri

0

이것은 대부분 구성 오류입니다. 방금 아파치에서 오래된 사이트를 사용하도록 설정 했는데이 오류가 발생했습니다. 그래서 아파치를 다시로드하기 전에 비활성화해야했습니다.

sudo a2dissite <my-site>
sudo service apache2 reload

문제 해결됨 :)


0

도와 주셔서 감사합니다! 솔루션으로 올바르게 설치할 수있었습니다.

apache2 구성 파일을 완전히 제거하려면 다음을 수행해야합니다.

  1. sudo apt-get purge apache2 그런 다음 일반적인 방법으로 다시 설치할 수 있습니다.

  2. sudo apt-get install apache 2

이제 잘 작동합니다.


0

문제는 일부 사이트를 사용하도록 설정했지만 해당 구성 파일을 삭제 한 것입니다. sudo a2dissite "name"으로 사이트를 비활성화 한 다음 아파치 서버를 다시 시작하십시오. 적어도 이것은 나에게 문제 였고이 조치로 해결되었습니다.


0

제 경우에는을 한 후에 오류가 나타나기 시작했습니다 apt upgrade. 많이 연주 한 후 디렉토리를 따라 가서 비활성화 할 수있는 것을 보았습니다.

  • / etc / apache2 / mods-enabled- a2dismod (켜기 위해 a2enconf)
  • / etc / apache2 / conf-enabled- a2disconf (다시 켜기 a2enconf)

내 경우에는 MODS를 사용하도록 설정해야했습니다.

여기에 이미지 설명을 입력하십시오

apt-upgrade비활성화하고 다시 시작하자마자 php7.2를 제거하거나 깨뜨린 것 같습니다 . 물론 다른 사람의 경우에는 다른 것일 수 있습니다. Apache가 충돌하면 구성이 잘못되거나 모드가 잘못되었을 수 있습니다. 당신은 당신의 전투를 선택해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.