Apache, Problem Fehler beim Starten von LSB: Apache2-Webserver

11

Ich benutze Ubuntu 16.02. Wenn ich es versuche sudo service apache2 restart, heißt es:

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

Dann tippe ich: journalctl -xeund fordere:

- - 
- Die Einheit apache2.service wurde gestartet.
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: /etc/init.d/apache2: 1: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: /etc/init.d/apache2: 49: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: /etc/init.d/apache2: 1: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: /etc/init.d/apache2: 49: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: * Starten des Apache httpd-Webservers apache2
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: *
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: * Die Konfiguration von apache2 ist fehlgeschlagen.
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: Die Ausgabe des Konfigurationstests war:
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: / usr / sbin / apache2ctl: 1: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: / usr / sbin / apache2ctl: 49: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: (2) Keine solche Datei oder kein solches Verzeichnis: AH02291: Zugriff auf das Verzeichnis '/ etc / apache2 / logs /' für das Hauptfehlerprotokoll
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: AH00014: Konfigurationsprüfung fehlgeschlagen
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: Aktion 'configtest' fehlgeschlagen.
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: Das Apache-Fehlerprotokoll enthält möglicherweise weitere Informationen.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Steuerungsprozess beendet, Code = Status beendet = 1
11. Januar 02:30:46 aleksandr-VirtualBox sudo [8171]: pam_unix (sudo: session): Sitzung für Benutzer root geschlossen
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: LSB konnte nicht gestartet werden: Apache2-Webserver.
- Betreff: Unit apache2.service ist fehlgeschlagen
- Definiert von: systemd
- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
- - 
- Die Einheit apache2.service ist fehlgeschlagen.
- - 
- Das Ergebnis ist fehlgeschlagen.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Gerät ist in den Status "Fehlgeschlagen" eingetreten.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Fehler mit Ergebnis 'Exit-Code'.
11. Januar 02:33:09 aleksandr-VirtualBox dhclient [792]: DHCPREQUEST von 192.168.56.101 auf enp0s8 bis 192.168.56.100 Port 67 (xid = 0x204f076f)
11. Januar 02:33:09 aleksandr-VirtualBox dhclient [792]: DHCPACK von 192.168.56.101 von 192.168.56.100
11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager [619]: [1484073189.4253] Adresse 192.168.56.101
11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager [619]: [1484073189.4260] plen 24 (255.255.255.0)
11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager [619]: [1484073189.4266] Server-ID 192.168.56.100
11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager [619]: [1484073189.4273] Lease-Zeit 1200
11. Januar 02:33:09 aleksandr-VirtualBox NetworkManager [619]: [1484073189.4279] dhcp4 (enp0s8): Status geändert gebunden -> gebunden
11. Januar 02:33:09 aleksandr-VirtualBox dbus [590]: [system] Aktivierung über systemd: service name = 'org.freedesktop.nm_dispatcher' unit = 'dbus-org.freedesktop.nm-dispatcher.service'
11. Januar 02:33:09 aleksandr-VirtualBox systemd [1]: Network Manager Script Dispatcher Service wird gestartet ...
- Betreff: Unit NetworkManager-dispatcher.service hat mit dem Start begonnen
- Definiert von: systemd
-- Unterstützung: 
- - 
- Unit NetworkManager-dispatcher.service wurde gestartet.
11. Januar 02:33:09 aleksandr-VirtualBox dhclient [792]: gebunden an 192.168.56.101 - Erneuerung in 559 Sekunden.
11. Januar 02:33:09 aleksandr-VirtualBox dbus [590]: [System] Dienst 'org.freedesktop.nm_dispatcher' erfolgreich aktiviert
11. Januar 02:33:09 aleksandr-VirtualBox systemd [1]: Network Manager Script Dispatcher Service gestartet.
- Betreff: Unit NetworkManager-dispatcher.service hat den Start abgeschlossen
- Definiert von: systemd
-- Unterstützung: 
- - 
- Der Start von Unit NetworkManager-dispatcher.service ist abgeschlossen.
- - 
- Das Anlaufergebnis ist fertig.
11. Januar 02:33:09 aleksandr-VirtualBox nm-dispatcher [8205]: req: 1 'dhcp4-change' [enp0s8]: neue Anfrage (1 Skripte)
11. Januar 02:33:09 aleksandr-VirtualBox nm-dispatcher [8205]: req: 1 'dhcp4-change' [enp0s8]: Start der Ausführung geordneter Skripte ...

Und wenn es systemctl status apache2.servicedarum geht:

* apache2.service - LSB: Apache2-Webserver
   Geladen: geladen (/etc/init.d/apache2; schlecht; Hersteller-Voreinstellung: aktiviert)
  Drop-In: /lib/systemd/system/apache2.service.d
           `-apache2-systemd.conf
   Aktiv: fehlgeschlagen (Ergebnis: Exit-Code) seit Mi 2017-01-11 02:30:46 +08; Vor 33min
     Docs: man: systemd-sysv-generator (8)
  Prozess: 8023 ExecStop = / etc / init.d / apache2 stop (Code = beendet, Status = 0 / SUCCESS)
  Prozess: 2236 ExecReload = / etc / init.d / apache2 reload (Code = beendet, Status = 0 / SUCCESS)
  Prozess: 8177 ExecStart = / etc / init.d / apache2 start (Code = beendet, Status = 1 / FAILURE)

11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: / usr / sbin / apache2ctl: 1: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: / usr / sbin / apache2ctl: 49: / etc / apache2 / envvars: envvars: nicht gefunden
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: (2) Keine solche Datei oder kein solches Verzeichnis: AH02291: Zugriff auf das Verzeichnis '/ etc / apache2 / logs /' für das Hauptfehlerprotokoll
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: AH00014: Konfigurationsprüfung fehlgeschlagen
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: Aktion 'configtest' fehlgeschlagen.
11. Januar 02:30:46 aleksandr-VirtualBox apache2 [8177]: Das Apache-Fehlerprotokoll enthält möglicherweise weitere Informationen.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Steuerungsprozess beendet, Code = Status beendet = 1
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: LSB konnte nicht gestartet werden: Apache2-Webserver.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Gerät ist in den Status "Fehlgeschlagen" eingetreten.
11. Januar 02:30:46 aleksandr-VirtualBox systemd [1]: apache2.service: Fehler mit Ergebnis 'Exit-Code'.

Was ist falsch? Wo ist eine Unterbrechung? Bitte helfen Sie!

A.Verber
quelle

Antworten:

8

Es gibt zwei Fehler:


1. Aus irgendeinem Grund /etc/apache2/envvarsfehlt Ihr :

  • von journalctl -xe:

    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: not found
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: not found
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 1: /etc/apache2/envvars: envvars: not found
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /etc/init.d/apache2: 49: /etc/apache2/envvars: envvars: not found
    ...        
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: not found
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: not found
    
  • von systemctl status apache2.service:

    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 1: /etc/apache2/envvars: envvars: not found
    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: /usr/sbin/apache2ctl: 49: /etc/apache2/envvars: envvars: not found
    

In meinem System hat diese Datei die nächsten Berechtigungen:

$ ls -l /etc/apache2/envvars

-rw-r--r--   1 root root  1782 мар 19  2016 envvars

Und sein Inhalt ( $ cat /etc/apache2/envvars) ist:

# envvars - default environment variables for apache2ctl

# this won't be correct after changing uid
unset HOME

# for supporting multiple apache2 instances
if [ "${APACHE_CONFDIR##/etc/apache2-}" != "${APACHE_CONFDIR}" ] ; then
        SUFFIX="-${APACHE_CONFDIR##/etc/apache2-}"
else
        SUFFIX=
fi

# Since there is no sane way to get the parsed apache2 config in scripts, some
# settings are defined via environment variables and then used in apache2ctl,
# /etc/init.d/apache2, /etc/logrotate.d/apache2, etc.
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
# temporary state file location. This might be changed to /run in Wheezy+1
export APACHE_PID_FILE=/var/run/apache2/apache2$SUFFIX.pid
export APACHE_RUN_DIR=/var/run/apache2$SUFFIX
export APACHE_LOCK_DIR=/var/lock/apache2$SUFFIX
# Only /var/log/apache2 is handled by /etc/logrotate.d/apache2.
export APACHE_LOG_DIR=/var/log/apache2$SUFFIX

## The locale used by some modules like mod_dav
export LANG=C
## Uncomment the following line to use the system default locale instead:
#. /etc/default/locale

export LANG

## The command to get the status for 'apache2ctl status'.
## Some packages providing 'www-browser' need '--dump' instead of '-dump'.
#export APACHE_LYNX='www-browser -dump'

## If you need a higher file descriptor limit, uncomment and adjust the
## following line (default is 8192):
#APACHE_ULIMIT_MAX_FILES='ulimit -n 65536'

## If you would like to pass arguments to the web server, add them below
## to the APACHE_ARGUMENTS environment.
#export APACHE_ARGUMENTS=''

## Enable the debug mode for maintainer scripts.
## This will produce a verbose output on package installations of web server mod                                               ules and web application
## installations which interact with Apache
#export APACHE2_MAINTSCRIPT_DEBUG=1

Sie können es manuell erstellen : sudo nano /etc/apache2/envvars, über den Inhalt einfügen, ctrl+ speichern ound ctrl+ beenden x.


2. In Ihrem System /etc/apache2/logsfehlt auch der Ordner :

  • von journalctl -xe:

    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)No such file or directory: AH02291: Cannot access directory '/etc/apache2/logs/' for main error log
    
  • von systemctl status apache2.service:

    Jan 11 02:30:46 aleksandr-VirtualBox apache2[8177]: (2)No such file or directory: AH02291: Cannot access directory '/etc/apache2/logs/' for main error log
    

Dies ist nicht der Standardprotokollordner, sondern wird in Ihrer benutzerdefinierten Konfiguration definiert und muss erstellt werden:

$ sudo mkdir /etc/apache2/logs
pa4080
quelle
Ich habe getan, was du geschrieben hast. Leider besteht immer noch ein Fehler :( Also wird weiter gesucht
A.Verber
@ A.Verber Ist immer noch der gleiche Fehler oder hat sich etwas geändert?
pa4080
1
@ A.Verber Ich habe deine Frage nochmal angeschaut. Ist in Ihrem System das Verzeichnis /etc/apache2/logs/vorhanden? Weil dies die zweite Fehlermeldung ist. Sie können es versuchen sudo mkdir /etc/apache2/logs.
pa4080
1
Ja! Nach dem Erstellen des Protokollverzeichnisses ist der Fehler verschwunden! Vielen Dank
A.Verber
5

Ich habe .conf-Dateien in Sites-Available gelöscht und die Link-Dateien in Sites-Enabled nicht gelöscht.

Jetzt habe ich alle Dateien in Sites-fähig gelöscht

Neustart des Apache2-Servers (Sudo-Dienst Apache2-Neustart)

arbeitete für mich

hoffe das könnte jemandem helfen :)

Soundarya
quelle
half mir! thx ..
Ich habe einmal mit einem Bären gerungen.
5

Ich hatte das gleiche Problem. Ich habe den gleichen Fehler mit sudo service apache2 restartund lief sudo systemctl status apache2.serviceund die rote Linie warFailed to start LSB: Apache2 web server.

Lösung

Führen Sie den folgenden Befehl aus:

sudo apache2ctl configtest

Es wird nach Fehlern gesucht (Syntaxfehler, glaube ich) und dann können Sie den Fehler debuggen.

Vahid
quelle
Ihre Lösung hat mir geholfen, mein Apache2-Problem zu lösen, danke.
S1awek
4

Versuchen Sie diese Befehle:

sudo a2dismod mpm_event
sudo a2enmod mpm_prefork

Starten Sie dann den Apache2-Dienst neu.

arnauld
quelle
sudo a2dismod mpm_event sudo a2enmod mpm_prefork
arnauld
0

In meinem Fall mache ich das:

deinstallieren und entfernen Sie Apache2

sudo service apache2 stop

sudo apt-get purge apache2

sudo apt-get autoremove

whereis apache2

sudo rm -rf /etc/apache2

Installieren Sie Apache2 neu

sudo apt-get install apache2

sudo apache2ctl configtest

Es läuft für mich

Messou
quelle