L'app Dancer non funziona con combinazione uWSGI (2.0.7) + Apache (2.4.10) mentre viene eseguita liberamente in altri ambienti (uWSGI + nginx, Starman + Apache, proprio server di sviluppo di Dancer). Non trovo nei log alcuna informazione significativa. Così ho fatto semplice applicazione test comePerché l'app Dancer fallisce sotto uWSGI + Apache?
$ dancer -a tset
Poi copiato predefinita production.yml
in uwsgi.yml
, legato bin/app.pl
in bin/app.psgi
creato tset.ini
come questo:
[uwsgi]
plugins = psgi
socket = 127.0.0.1:3033
uid = www
gid = www-data
chdir = /home/www/apps/tset/bin/
psgi = app.psgi
processes = 1
master = true
reso questo ini disponibile per uWsgi in /etc/uwsgi/apps-available
, legata in /etc/uwsgi/apps-enabled
.
Riavviato uwsgi
servizio.
Poi per modulo di Apache (2.4.10) mod-proxy-uwsgi
aggiunto poche righe nel mio conf virtualhost:
ProxyPass /adm/y uwsgi://127.0.0.1:3033/
Questo sembra il punto più fragile, perché mi sento come ho bisogno di impostare uWSGIModifier1 5
qui, ma non ho capito dove e come?
Apache riavviato e ricevuto "Errore interno server". Nel registro uwsgi vedo solo:
Tue Jan 19 02:10:36 2016 - spawned uWSGI worker 1 (pid: 21712, cores: 1)
Tue Jan 19 02:10:56 2016 - -- unavailable modifier requested: 0 --
Tue Jan 19 02:24:44 2016 - -- unavailable modifier requested: 0 --
Tue Jan 19 02:27:14 2016 - -- unavailable modifier requested: 0 --
Tue Jan 19 02:27:17 2016 - -- unavailable modifier requested: 0 --
Che cos'è questo "modificatore non disponibile richiesto"?
In error.log Apache è nessuna voce, in access.log sono voci, ma nessuna altra informazione di stato di 500.
Tale comportamento è riproducibile con passaggi di cui sopra, quindi spero capire, ciò che è sbagliato in questa combinazione?
Purtroppo per il ritardo. Questo è stato un buon suggerimento e dopo essermi trasferito allo '0: psgi' ho un piccolo progresso. Nel registro uwsgi ora '--- impossibile trovare l'applicazione perl ---' e un'altra riga disordinata '[pid: 5757 | app: -1 | req: -1/1] 212.7.22.161() {66 vars nel 1511 bytes} [Sat Jan 23 00:07:15 2016] GET/adm/z/=> ha generato 21 byte in 0 msecs (HTTP/1.1 500) 2 intestazioni in 83 byte (0 passa al core 0) 'Qui vedo che la risposta è 21 byte, qual è la lunghezza di" Errore interno del server ". Hai qualche suggerimento in più, perché l'app Perl non è stata trovata sotto Apache qui? –
Abbiamo scoperto che www-data usesr non aveva lo stesso '@ INC', ecco perché l'app Perl non è stata trovata. Quindi ho eseguito uwsgi anche con Apache2. Grazie! –