Puncte:0

Apache2 pe Ubuntu EC2 se defectează și nu repornește

drapel cn

Istorie:

Am mutat o instalare Codeigniter 3 de la Bluehost la un T3.2xlarge. Acea instanță unică găzduiește apache2 și un server mysql ca bază de date locală.

Pe Bluehost, instanța rula bine, migrarea s-a făcut, deoarece Bluehost însuși avea întreruperi și ne doream găzduire mai fiabilă.


Eroare

De la migrare, Pagina scade complet aleatoriu. Încerc să repornesc apache2 cu:

sudo service apache2 reporniți

Nu funcționează, necesită o repornire completă a instanței EC2 pentru ca serviciul să ruleze din nou. După repornirea EC2, apache2 și mysql rulează și pagina este deschisă fără a porni serviciile după repornirea instanței.


Încercarea de depanare 1

Deoarece pagina a fost în jos când au fost rulate cronuri intense ale bazei de date, am presupus că serverul mysql era blocajul. Migrarea întregii baze de date într-un RDS fără server ar trebui să elimine toate blocajele legate de bazele de date. Aceleași cronuri intense ale bazei de date se termină acum. Pentru a elimina și mai mult ca cron-ul să fie motivul pentru care sistemul se defectează, am clonat EC2 și am folosit clona pentru a rula cron-ul, în timp ce originalul găzduiește pagina web către care indică domeniul.

Cu toate acestea, întreruperi aleatorii încă persistă.


Încercarea de depanare 2

Presupunând că este o problemă de memorie, după ce am verificat phpinfi.php am văzut că PHP avea 128Mb de RAM (pe o mașină de 32Gb), așa că doar pentru a vedea dacă mai multă RAM ajută:

  1. memory_limit setată la 8192Mb
  2. reporniți EC2
  3. reporniți php7.4-fpm
  4. reporniți apache2

phpinfo a confirmat că memory_limit este setat la 8192M.

Întreruperi aleatorii încă persistă.


Încercarea de depanare 3

Verificarea comenzii:

sudo apache2ctl -t

se intoarce:

Sintaxa OK

Verificarea comenzii:

nano /var/log/apache2/error.log

contine:

[mpm_worker:notice] AH00295: prins SIGTERM, închidere

Deci presupun că Apache se închide într-un fel din anumite motive, dar nu se poate reporni.

Verificarea comenzii:

sudo service apache2 reporniți

nu aruncă erori

Verificarea comenzii:

sudo apache2ctl restart

nu aruncă erori

Verificarea comenzii:

/usr/sbin/apache2 -V

spectacole:

[core:warn] [pid 24560] AH00111: variabila de configurare ${APACHE_RUN_DIR} este nedefinit

apache2: Eroare de sintaxă pe linia 81 din /etc/apache2/apache2.conf: DefaultRuntimeDir trebuie să fie

un director valid, absolut sau relativ la ServerRoot

Versiunea serverului: Apache/2.4.41 (Ubuntu)

Server construit: 2022-03-16T16:52:53

Numărul magic al modulului serverului: 20120211:88

Server încărcat: APR 1.6.5, APR-UTIL 1.6.1

Compilat folosind: APR 1.6.5, APR-UTIL 1.6.1

Arhitectură: 64 de biți

Server MPM:

Server compilat cu....

-D APR_HAS_SENDFILE

-D APR_HAS_MMAP

-D APR_HAVE_IPV6 (adresele mapate IPv4 sunt activate)

-D APR_USE_SYSVSEM_SERIALIZE

-D APR_USE_PTHREAD_SERIALIZE

-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT

-D APR_HAS_OTHER_CHILD

-D AP_HAVE_RELIABLE_PIPED_LOGS

-D DYNAMIC_MODULE_LIMIT=256

-D HTTPD_ROOT="/etc/apache2"

-D SUEXEC_BIN="/usr/lib/apache2/suexec"

-D DEFAULT_PIDLOG="/var/run/apache2.pid"

-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"

-D DEFAULT_ERRORLOG="jurnal/eroare"

-D AP_TYPES_CONFIG_FILE="mime.types"

-D SERVER_CONFIG_FILE="apache2.conf"

Unde pot vedea 2 lucruri:

  • există o problemă cu ${APACHE_RUN_DIR}
  • Server MPM nu returnează un MPM

Verificarea comenzii:

 apache2 -l

se intoarce:

Compilat în module:
miez.c
mod_so.c
mod_watchdog.c
http_core.c
mod_log_config.c
mod_logio.c
mod_version.c
mod_unixd.c

Ce nu arată un modul MPM.

Verificarea comenzii:

apache2 -l
apache2ctl -l

se intoarce:

Compilat în module:
miez.c
mod_so.c
mod_watchdog.c
http_core.c
mod_log_config.c
mod_logio.c
mod_version.c
mod_unixd.c

Verificarea comenzii:

a2query -M

se intoarce:

muncitor


Întrebare:

Și aici am fost blocat acum. Mai pot verifica sau citi altceva din încercarea de depanare 3 pentru a vedea de ce apache se oprește/nu repornește și necesită o repornire completă a serverului?

Wilson Hauck avatar
drapel jp
Această adresă URL vă poate ajuta să rezolvați variabila lipsă APACHE_RUN_DIR. https://www.osradar.com/ah00111-config-variable-apache_run_dir-is-not-defined/ Noroc. Acoperiți o problemă pe zi de obicei = progres.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.