Назад | Перейти на главную страницу

Смущает DFOREGROUND с Apache

Итак, я только что установил Apache на новый сервер CentOS 7, используя Yum. Я много раз устанавливал Apache, но никогда не видел такого: Когда я запускаю ps aux теперь это всегда видно

/ usr / sbin / httpd -DFOREGROUND

Google сообщает мне, что это означает, что процесс будет выполняться на переднем плане и не будет отделяться от оболочки, но я действительно не понимаю, что это означает - если я закрою оболочку, умрет ли Apache?

Я просто хочу получить нормальное поведение Apache и запустить httpd, как всегда, в фоновом режиме, нужно ли мне отключить DFOREGROUND? (Я не могу понять, как это сделать)

В -DFOREGROUND действительно означает, что Apache не будет разветвляться, но это не значит, что он прикреплен к вашей оболочке!

Служба запускается systemd при запуске systemctl start httpd (или по старинке, service httpd start). Это systemd, к которому прикреплен Apache, и systemd управляет процессом как один из своих дочерних процессов. Это сделано для того, чтобы systemd могла легко определить, произошел ли сбой Apache, без необходимости опрашивать файл pid или выполнять другие неприятные хакерские действия. Это также означает, что systemd способен автоматически перезапуск Apache если произойдет сбой.

Бегать systemctl status httpd чтобы увидеть его статус. Пример выглядит так:

# systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
   Active: active (running) since Sat 2014-07-12 01:53:50 UTC; 1 weeks 3 days ago
  Process: 21400 ExecReload=/usr/sbin/httpd $OPTIONS -k graceful (code=exited, status=0/SUCCESS)
 Main PID: 390 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─  390 /usr/sbin/httpd -DFOREGROUND
           ├─15379 /usr/sbin/httpd -DFOREGROUND
           ├─15858 /usr/sbin/httpd -DFOREGROUND
           ├─16809 /usr/sbin/httpd -DFOREGROUND
           ├─16944 /usr/sbin/httpd -DFOREGROUND
           ├─17079 /usr/sbin/httpd -DFOREGROUND
           ├─17351 /usr/sbin/httpd -DFOREGROUND
           ├─17487 /usr/sbin/httpd -DFOREGROUND
           ├─17772 /usr/sbin/httpd -DFOREGROUND
           ├─17908 /usr/sbin/httpd -DFOREGROUND
           └─18043 /usr/sbin/httpd -DFOREGROUND

Jul 12 01:53:50 hozen httpd[390]: AH02559: The SSLCertificateChai...d
Jul 12 01:53:50 hozen httpd[390]: AH00558: httpd: Could not relia...e
Jul 12 01:53:50 hozen systemd[1]: Started The Apache HTTP Server.
Jul 13 03:30:02 hozen systemd[1]: Reloading The Apache HTTP Server.
Jul 13 03:30:02 hozen httpd[9332]: AH02559: The SSLCertificateCha...d
Jul 13 03:30:02 hozen systemd[1]: Reloaded The Apache HTTP Server.
Jul 21 03:19:02 hozen systemd[1]: Reloading The Apache HTTP Server.
Jul 21 03:19:02 hozen httpd[21400]: AH02559: The SSLCertificateCh...d
Jul 21 03:19:02 hozen systemd[1]: Reloaded The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.