Centos: Apache deve leggere i file creati da Tomcat


0

Dopo aver provato molte soluzioni diverse sono venuto qui per chiedere aiuto.

Ho un'app Web in apache HTTPD che serve il frontend e un'app Java in Tomcat nello stesso server.

Il fatto è che i file creati da Tomcat non sono leggibili da Apache. Voglio dire, gli utenti possono caricare file nel server Appache, invia i file al servizio Tomcat che elabora alcune informazioni e archivia i file in una cartella pubblica in modo che Apache possa leggerli. Il fatto è che Apache ottiene 403 su quei file.

Se eseguo chmod -R 777 nella directory img / (dove sono archiviati i file) ottengo l'accesso a quei file, ma ogni volta che carico un nuovo file, HTTPD non ha accesso ad esso fino a quando non eseguo il comando.

Ho creato un webuser di chiamata di gruppo e ad esso ho aggiunto gli utenti tomcat e apache.

Se eseguo ln -l su quella directory ottengo (per i vecchi file)

drwsrwsrwx. 2 tomcat webusers 4096 Aug 16 08:50 337

Ma quando carico un nuovo file ottengo:

drwxr-s---. 2 tomcat webusers 4096 Aug 16 14:44 33f

E se provo ad aprire nel browser ottengo

Proibito

Non sei autorizzato ad accedere a /assets/img/cars/brands/33f1d3f1-0e4b-4924-acc1-11e28bed08a8/c_h_1.jpg su questo server.

Ho provato molti chown -R / chmod -R 7777 senza successo, potresti aiutarmi a rendere leggibili da Apache i file creati da Tomcat?


Apache viene utilizzato per qualcos'altro?
stdunbar,

No ... Solo per servire questa pagina
Faabass

Risposte:


1

Se Apache viene utilizzato solo come fronte per Tomcat, la risposta più semplice sarebbe far eseguire i processi figlio Apache come Tomcat. Non sono sicuro della tua versione di CentOS ma guardando alcune cose sembra che il pacchetto Apache2 predefinito crei un file di configurazione /etc/httpd/conf/httpd.conf. Da lì si desidera trovare il parametro di configurazione User. Nel mio ambiente ho qualcosa come:

User www-user
Group www

Ma è probabile che la tua configurazione sia diversa. Modifica il Usertuo utente Tomcat e Grouplo stesso gruppo dell'utente Tomcat. Ancora una volta, non sono sicuro della posizione del file di configurazione di Apache - potresti doverlo cercare un po '. Dopo aver modificato questa impostazione, è necessario riavviare Apache affinché abbia effetto.


Ciao! Grazie! questo risolve il problema ... cambio utente apache per tomcat e il gruppo webusers .. Non sono sicuro che questa sia la risposta migliore perché non preferisco l'idea di cambiare gli utenti, ma ho esaurito le opzioni .. Ho la stessa situazione in passato e potrei farlo funzionare (non ricordo come) Quindi, dato lo scenario attuale, questo ha risolto il mio problema! Quindi grazie!
Faabass
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.