Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Paride Desimone
Il 16 maggio 2023 12:17:23 UTC, Diego Zuccato  ha 
scritto:
>
>Altro problema: se si adotta un framework per un progetto a lunga scadenza (10 
>anni o più), poi regolarmente ci si scontra con incompatibilità (era per 
>PHP5.6, con 8.1 quella versione non funziona più e devi mettere la nuova, che 
>però ha un'API diversa e finisci per dover riscrivere tutto o peggio ti 
>introduce dei bug subdoli), catene di dipendenze infinite (con relativi 
>problemi di sicurezza), e chi viene per aiutarti (lo sbarbatello che "sa 
>programmare il web") non conosce quel framework perché troppo vecchio e fuori 
>moda e quindi comunque deve studiarlo da zero.
>
>Per non parlare di un problema di sicurezza: un bug nel framework ti lascia 
>esposto a molti più attacchi automatici.
>

Che è esattamente il perché quando programmavo in COBOL reinventavo spesso una 
nuova ruota.

/paride


-- 
Inviato dal mio dispositivo Android con K-9 Mail. Perdonate la brevità.



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Sacco
Ciao,

Il giorno lun, 15/05/2023 alle 17.04 +0200, Giuseppe Naponiello ha scritto:
[...]
> sys_get_temp_dir e altre funzioni simili di php mi danno come risultato 
> sempre /tmp/, se però provo "new \SplFileObject("/tmp/tmp-test.txt", 
> "a+");" me lo scrive correttamente in systemd-private.xxx..xyz/tmp/

Puoi confermare che lo trovi in /tmp/systemd-/tmp e non in
/tmp/systemd- (senza l'ulteriore /tmp finale)?

Ciao,
Giuseppe



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Sacco
Il giorno mar, 16/05/2023 alle 12.54 +0200, Giuseppe Sacco ha scritto:
> Ciao Giuseppe,
[...]
> Per come la vedo io, il sistema dovrebbe funzionare in questo modo:
> apache2
> parte con una /tmp sempre diversa perché nel file
> /lib/systemd/system/apache2.service c'è scritto PrivateTmp=true. A questo
> punto, quando systemd fa partire il processo di apache, gli imposta una
> specie di file system privato (un namespace) nel quale il path /tmp/
> corrisponde ad una directory che dal punto di vista globale è
> /tmp/systemd A quel punto, qualsiasi altro processo avviato da
> apache2
> vedrà la stessa /tmp.
[...]

Puoi anche fare la controprova disabilitando PrivateTmp per apache2 e
verificando che questo sia proprio la causa del problema. Per
disabilitarlo, crea il file
/etc/systemd/system/apache2.service.d/noprivatetmp.conf
con le due righe seguenti:
[Service]
PrivateTmp=false

e poi dai i due comandi, da root, per rileggere i file e riavviare apache2:
systemctl daemon-reload
systemctl restart apache2

Ciao,
Giuseppe



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Diego Zuccato
Beh, anche le mie classi di interfacciamento al db fanno abbastanza 
ridere, di base (p.e. le query mi ritornano comunque un array coi 
risultati, no iteratori, ho preferito la semplicità, non avendo tabelle 
enormi). Però mi è riuscita direi abbastanza bene la gestione delle join :)


Il problema è che gli applicativi o sono fire o tendono a 
crescere stratificandosi, o partono come F e dopo qualche anno te li 
fanno estendere (meno male che avevo previsto una discreta modularità in 
partenza :) ). Purtroppo i framework che avevo guardato al tempo mi 
avrebbero richiesto, per iniziare ad usarli decentemente, più tempo di 
quello che avevo a disposizione per realizzare l'applicativo...


Altro problema: se si adotta un framework per un progetto a lunga 
scadenza (10 anni o più), poi regolarmente ci si scontra con 
incompatibilità (era per PHP5.6, con 8.1 quella versione non funziona 
più e devi mettere la nuova, che però ha un'API diversa e finisci per 
dover riscrivere tutto o peggio ti introduce dei bug subdoli), catene di 
dipendenze infinite (con relativi problemi di sicurezza), e chi viene 
per aiutarti (lo sbarbatello che "sa programmare il web") non conosce 
quel framework perché troppo vecchio e fuori moda e quindi comunque deve 
studiarlo da zero.


Per non parlare di un problema di sicurezza: un bug nel framework ti 
lascia esposto a molti più attacchi automatici.


Diego

Il 16/05/2023 12:56, Giuseppe Naponiello ha scritto:

oddio che bello, non sono solo!!!

Nel mio caso, lavorando tanto con i db, ho visto (ma potrei sbagliarmi) 
che i vari framework sfruttano davvero poco le potenzialità di un db 
come postgresql o anche solo mysql...ma ripeto, sarà perché non conosco 
a fondo le potenzialità di un framework come laravel


Il 16/05/23 11:47, Diego Zuccato ha scritto:
Mah... Ogni volta che ho provato a mettermi dietro ad un framework, mi 
sono ritrovato che era insufficiente o troppo pesante per le mie 
esigenze, oppure pressoché incomprensibile (= quando fossi riuscito a 
capire come usarlo sarebbe già stato obsoleto).


Visto che lo sviluppo di applicativi web è per me molto secondario, ho 
finito per crearmi negli ultimi 15 anni il mio carrozzone di classi 
che alla fine è compatibile con tutto (da 5.6 a 8.1) :)
Sarebbe però interessante un confronto dei vari framework maturi in 
circolazione.


Diego

Il 16/05/2023 11:41, Giuseppe Naponiello ha scritto:

Ciao Lorenzo,

Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework)
Prima o poi dovrò decidermi anch'io! Non lo faccio solo per pigrizia, 
ho provato Laravel, i vantaggi sono evidenti ma l'abitudine è dura da 
modificare!!!


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non 
mi trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.
Passando i dati (e il file) via FormData() non mi sembrava fosse 
necessario specificare l'enctype del form, comunque molto 
interessante, approfondisco!


Grazie

Il 16/05/23 10:44, Lorenzo Breda ha scritto:
Il lun 15 mag 2023, 17:04 Giuseppe Naponiello  
ha scritto:


    Il problema è che non trovo una soluzione per caricare un file da
    interfaccia web in una cartella del server: con fetch API e 
formData
    mando il file da caricare al server, che con un funzione php 
dovrebbe

    spostarlo da tmp alla destinazione finale con la classica funzione
    "move_upload_file", l'errore, come previsto, è che php cerca il
    file da
    spostare in /tmp/ e non in systemd


Buongiorno,

Non mi risulta che move_uploaded_file abbia problemi con systemd. 
Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework) ma sotto quello c'è. Il fatto che 
PHP veda tmp come cartella temporanea invece di quella reale è un 
effetto ottico di systemd, in realtà legge e scrive correttamente in 
quella giusta.


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non 
mi trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.


Buona giornata!

--
Lorenzo Breda




--
Diego Zuccato
DIFA - Dip. di Fisica e Astronomia
Servizi Informatici
Alma Mater Studiorum - Università di Bologna
V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
tel.: +39 051 20 95786



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Naponiello

oddio che bello, non sono solo!!!

Nel mio caso, lavorando tanto con i db, ho visto (ma potrei sbagliarmi) 
che i vari framework sfruttano davvero poco le potenzialità di un db 
come postgresql o anche solo mysql...ma ripeto, sarà perché non conosco 
a fondo le potenzialità di un framework come laravel


Il 16/05/23 11:47, Diego Zuccato ha scritto:
Mah... Ogni volta che ho provato a mettermi dietro ad un framework, mi 
sono ritrovato che era insufficiente o troppo pesante per le mie 
esigenze, oppure pressoché incomprensibile (= quando fossi riuscito a 
capire come usarlo sarebbe già stato obsoleto).


Visto che lo sviluppo di applicativi web è per me molto secondario, ho 
finito per crearmi negli ultimi 15 anni il mio carrozzone di classi 
che alla fine è compatibile con tutto (da 5.6 a 8.1) :)
Sarebbe però interessante un confronto dei vari framework maturi in 
circolazione.


Diego

Il 16/05/2023 11:41, Giuseppe Naponiello ha scritto:

Ciao Lorenzo,

Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework)
Prima o poi dovrò decidermi anch'io! Non lo faccio solo per pigrizia, 
ho provato Laravel, i vantaggi sono evidenti ma l'abitudine è dura da 
modificare!!!


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non 
mi trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.
Passando i dati (e il file) via FormData() non mi sembrava fosse 
necessario specificare l'enctype del form, comunque molto 
interessante, approfondisco!


Grazie

Il 16/05/23 10:44, Lorenzo Breda ha scritto:
Il lun 15 mag 2023, 17:04 Giuseppe Naponiello  
ha scritto:


    Il problema è che non trovo una soluzione per caricare un file da
    interfaccia web in una cartella del server: con fetch API e 
formData
    mando il file da caricare al server, che con un funzione php 
dovrebbe

    spostarlo da tmp alla destinazione finale con la classica funzione
    "move_upload_file", l'errore, come previsto, è che php cerca il
    file da
    spostare in /tmp/ e non in systemd


Buongiorno,

Non mi risulta che move_uploaded_file abbia problemi con systemd. 
Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework) ma sotto quello c'è. Il fatto che 
PHP veda tmp come cartella temporanea invece di quella reale è un 
effetto ottico di systemd, in realtà legge e scrive correttamente in 
quella giusta.


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non 
mi trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.


Buona giornata!

--
Lorenzo Breda






Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Sacco
Ciao Giuseppe,

Il giorno lun, 15/05/2023 alle 17.04 +0200, Giuseppe Naponiello ha scritto:
> Buongiorno,
> vecchio problema a cui non ho trovato una soluzioni "pulite".
> 
> Con l'introduzione di systemd i browser (e tutte le altre applicazioni 
> che ne usufruiscono) non scrivono più in /tmp/ ma in 
> /tmp/systemd-private-xxx-apache2.service.blablabla...non vado oltre 
> perché tanto lo sapete meglio di me di sicuro.
[...]

Per come la vedo io, il sistema dovrebbe funzionare in questo modo: apache2
parte con una /tmp sempre diversa perché nel file
/lib/systemd/system/apache2.service c'è scritto PrivateTmp=true. A questo
punto, quando systemd fa partire il processo di apache, gli imposta una
specie di file system privato (un namespace) nel quale il path /tmp/
corrisponde ad una directory che dal punto di vista globale è
/tmp/systemd A quel punto, qualsiasi altro processo avviato da apache2
vedrà la stessa /tmp.

Ora, se l'interprete php è quello della libreria di apache, vienne eseguito
dallo stesso processo (credo) e quindi vede la stessa /tmp; se invece è un
fast cgi, allora comunicano via socket. In questo caso dovresti controllare
quale servizio attiva il fast cgi e, a quel punto, hai la possibilità di
modificare la /tmp del processo fast cgi in modo che sia la stessa di
quello di apache usando il comando JoinsNamespaceOf=apache2.service nel
primo dei due.

Per capire come apache avvia il php devi controllare il sito che hai
configurato.

Ciao,
Giuseppe



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Diego Zuccato
Mah... Ogni volta che ho provato a mettermi dietro ad un framework, mi 
sono ritrovato che era insufficiente o troppo pesante per le mie 
esigenze, oppure pressoché incomprensibile (= quando fossi riuscito a 
capire come usarlo sarebbe già stato obsoleto).


Visto che lo sviluppo di applicativi web è per me molto secondario, ho 
finito per crearmi negli ultimi 15 anni il mio carrozzone di classi che 
alla fine è compatibile con tutto (da 5.6 a 8.1) :)
Sarebbe però interessante un confronto dei vari framework maturi in 
circolazione.


Diego

Il 16/05/2023 11:41, Giuseppe Naponiello ha scritto:

Ciao Lorenzo,

Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework)
Prima o poi dovrò decidermi anch'io! Non lo faccio solo per pigrizia, ho 
provato Laravel, i vantaggi sono evidenti ma l'abitudine è dura da 
modificare!!!


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non mi 
trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.
Passando i dati (e il file) via FormData() non mi sembrava fosse 
necessario specificare l'enctype del form, comunque molto interessante, 
approfondisco!


Grazie

Il 16/05/23 10:44, Lorenzo Breda ha scritto:
Il lun 15 mag 2023, 17:04 Giuseppe Naponiello  ha 
scritto:


Il problema è che non trovo una soluzione per caricare un file da
interfaccia web in una cartella del server: con fetch API e formData
mando il file da caricare al server, che con un funzione php dovrebbe
spostarlo da tmp alla destinazione finale con la classica funzione
"move_upload_file", l'errore, come previsto, è che php cerca il
file da
spostare in /tmp/ e non in systemd


Buongiorno,

Non mi risulta che move_uploaded_file abbia problemi con systemd. Sono 
uno sviluppatore PHP, non userò direttamente la funzione da decenni 
(lavoro con i framework) ma sotto quello c'è. Il fatto che PHP veda 
tmp come cartella temporanea invece di quella reale è un effetto 
ottico di systemd, in realtà legge e scrive correttamente in quella 
giusta.


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non mi 
trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.


Buona giornata!

--
Lorenzo Breda


--
Diego Zuccato
DIFA - Dip. di Fisica e Astronomia
Servizi Informatici
Alma Mater Studiorum - Università di Bologna
V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
tel.: +39 051 20 95786



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Lorenzo Breda
Il mar 16 mag 2023, 11:41 Giuseppe Naponiello  ha
scritto:

> Ciao Lorenzo,
>
> Sono uno sviluppatore PHP, non userò direttamente la funzione da decenni
> (lavoro con i framework)
>
> Prima o poi dovrò decidermi anch'io! Non lo faccio solo per pigrizia, ho
> provato Laravel, i vantaggi sono evidenti ma l'abitudine è dura da
> modificare!!!
>

Un altro mondo davvero.

Passando i dati (e il file) via FormData() non mi sembrava fosse necessario
> specificare l'enctype del form, comunque molto interessante, approfondisco!
>

FormData dovrebbe usare l'encoding corretto. Comunque un'occhiata alla
request per vedere se c'è tutto dalla, se c'è dovrebbe correttamente
funzionare passando come primo parametro il nome effettivo del file:
move_uploaded_file($_FILES["nome_campo"]["tmp_name"], $destinazione)

-- 
Lorenzo Breda

>


Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Naponiello

Ciao Lorenzo,

Sono uno sviluppatore PHP, non userò direttamente la funzione da 
decenni (lavoro con i framework)
Prima o poi dovrò decidermi anch'io! Non lo faccio solo per pigrizia, ho 
provato Laravel, i vantaggi sono evidenti ma l'abitudine è dura da 
modificare!!!


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non mi 
trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.
Passando i dati (e il file) via FormData() non mi sembrava fosse 
necessario specificare l'enctype del form, comunque molto interessante, 
approfondisco!


Grazie

Il 16/05/23 10:44, Lorenzo Breda ha scritto:
Il lun 15 mag 2023, 17:04 Giuseppe Naponiello  ha 
scritto:


Il problema è che non trovo una soluzione per caricare un file da
interfaccia web in una cartella del server: con fetch API e formData
mando il file da caricare al server, che con un funzione php dovrebbe
spostarlo da tmp alla destinazione finale con la classica funzione
"move_upload_file", l'errore, come previsto, è che php cerca il
file da
spostare in /tmp/ e non in systemd


Buongiorno,

Non mi risulta che move_uploaded_file abbia problemi con systemd. Sono 
uno sviluppatore PHP, non userò direttamente la funzione da decenni 
(lavoro con i framework) ma sotto quello c'è. Il fatto che PHP veda 
tmp come cartella temporanea invece di quella reale è un effetto 
ottico di systemd, in realtà legge e scrive correttamente in quella 
giusta.


La mia esperienza è che il 99.99% degli errori "PHP/java/swift non mi 
trova il file caricato" è dovuto al fatto che il form html non ha 
correttamente settato l'enctype a "multipart/form-data", e quindi 
invece del file viene caricato il suo nome.


Buona giornata!

--
Lorenzo Breda

Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Naponiello

Ciao, Diego

le 2 direttive che mi indichi sono commentate anche nel mio caso.

Il 16/05/23 10:46, Diego Zuccato ha scritto:
Io uso php-fpm e non ha nessun problema a trovare la cartella dove 
apache mette gli UL...


Nel php.ini sys_temp_dir è commentata.

Magari verifica anche upload_tmp_dir (anche questa da me è commentata).

In tutta /etc/apache2 gli unici riferimenti alla stringa /tmp sono per 
DavLockDB all'interno dei vhost.


Il mio sistema è stato installato seguendo (abbastanza fedelmente) la 
guida "the perfect server" per ISPConfig3.


Diego

Il 16/05/2023 09:42, Federico Di Gregorio ha scritto:

On 15/05/23 18:53, Giuseppe Naponiello wrote:
ok, quindi in php.ini devo decommentare la sezione che gestisce la 
cartella tmp:


; Directory where the temporary files should be placed.
; Defaults to the system default (see sys_get_temp_dir)
;sys_temp_dir = "/tmp"

e invece di /tmp inserire il percorso corretto, cioè quello del 
servizio di apache? Giusto?


Temo di no. Quando Apache viene riavviato la directory usata come 
/tmp potrebbe cambiare e il PHP non la troverebbe più.


federico

Federico Di Gregorio federico.digrego...@dndg.it
DNDG srl http://dndg.it
  heisenbug /hi:'zen-buhg/ /n./ [from Heisenberg's Uncertainty Principle
   in quantum physics] A bug that disappears or alters its behavior when
   one attempts to probe or isolate it.







Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Naponiello

Ciao Federico,

Quando Apache viene riavviato la directory usata come /tmp potrebbe 
cambiare e il PHP non la troverebbe più. 

Infatti, questo era il mio grande dubbio!

Il 16/05/23 09:42, Federico Di Gregorio ha scritto:

On 15/05/23 18:53, Giuseppe Naponiello wrote:
ok, quindi in php.ini devo decommentare la sezione che gestisce la 
cartella tmp:


; Directory where the temporary files should be placed.
; Defaults to the system default (see sys_get_temp_dir)
;sys_temp_dir = "/tmp"

e invece di /tmp inserire il percorso corretto, cioè quello del 
servizio di apache? Giusto?


Temo di no. Quando Apache viene riavviato la directory usata come /tmp 
potrebbe cambiare e il PHP non la troverebbe più.


federico

Federico Di Gregorio federico.digrego...@dndg.it
DNDG srl http://dndg.it
 heisenbug /hi:'zen-buhg/ /n./ [from Heisenberg's Uncertainty Principle
  in quantum physics] A bug that disappears or alters its behavior when
  one attempts to probe or isolate it.





Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Giuseppe Naponiello

Ciao Piviul,


non sono molto pratico ma non credo tu sia sulla strada giusta

io invece sono sicuro di NON essere sulla strada giusta!!! 

cat $(ls /etc/apache2/mods-enabled/php*.load)
# Conflicts: php5
# Depends: mpm_prefork
LoadModule php7_module /usr/lib/apache2/modules/libphp7.4.so

Il 15/05/23 20:03, Piviul ha scritto:

Il 15/05/23 18:53, Giuseppe Naponiello ha scritto:
ok, quindi in php.ini devo decommentare la sezione che gestisce la 
cartella tmp:


; Directory where the temporary files should be placed.
; Defaults to the system default (see sys_get_temp_dir)
;sys_temp_dir = "/tmp"

e invece di /tmp inserire il percorso corretto, cioè quello del 
servizio di apache? Giusto?
Ciao Giuseppe, non sono molto pratico ma non credo tu sia sulla strada 
giusta. In apache2 come carichi php? In /etc/apache2/mods-enabled/ 
dove punta il .load per php? In altre parole posta l'otput di


$ cat $(ls /etc/apache2/mods-enabled/php*.load)

Piviul





Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Diego Zuccato
Io uso php-fpm e non ha nessun problema a trovare la cartella dove 
apache mette gli UL...


Nel php.ini sys_temp_dir è commentata.

Magari verifica anche upload_tmp_dir (anche questa da me è commentata).

In tutta /etc/apache2 gli unici riferimenti alla stringa /tmp sono per 
DavLockDB all'interno dei vhost.


Il mio sistema è stato installato seguendo (abbastanza fedelmente) la 
guida "the perfect server" per ISPConfig3.


Diego

Il 16/05/2023 09:42, Federico Di Gregorio ha scritto:

On 15/05/23 18:53, Giuseppe Naponiello wrote:
ok, quindi in php.ini devo decommentare la sezione che gestisce la 
cartella tmp:


; Directory where the temporary files should be placed.
; Defaults to the system default (see sys_get_temp_dir)
;sys_temp_dir = "/tmp"

e invece di /tmp inserire il percorso corretto, cioè quello del 
servizio di apache? Giusto?


Temo di no. Quando Apache viene riavviato la directory usata come /tmp 
potrebbe cambiare e il PHP non la troverebbe più.


federico

Federico Di Gregorio federico.digrego...@dndg.it
DNDG srl  http://dndg.it
  heisenbug /hi:'zen-buhg/ /n./ [from Heisenberg's Uncertainty Principle
   in quantum physics] A bug that disappears or alters its behavior when
   one attempts to probe or isolate it.



--
Diego Zuccato
DIFA - Dip. di Fisica e Astronomia
Servizi Informatici
Alma Mater Studiorum - Università di Bologna
V.le Berti-Pichat 6/2 - 40127 Bologna - Italy
tel.: +39 051 20 95786



Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Lorenzo Breda
Il lun 15 mag 2023, 17:04 Giuseppe Naponiello  ha
scritto:

> Il problema è che non trovo una soluzione per caricare un file da
> interfaccia web in una cartella del server: con fetch API e formData
> mando il file da caricare al server, che con un funzione php dovrebbe
> spostarlo da tmp alla destinazione finale con la classica funzione
> "move_upload_file", l'errore, come previsto, è che php cerca il file da
> spostare in /tmp/ e non in systemd
>

Buongiorno,

Non mi risulta che move_uploaded_file abbia problemi con systemd. Sono uno
sviluppatore PHP, non userò direttamente la funzione da decenni (lavoro con
i framework) ma sotto quello c'è. Il fatto che PHP veda tmp come cartella
temporanea invece di quella reale è un effetto ottico di systemd, in realtà
legge e scrive correttamente in quella giusta.

La mia esperienza è che il 99.99% degli errori "PHP/java/swift non mi trova
il file caricato" è dovuto al fatto che il form html non ha correttamente
settato l'enctype a "multipart/form-data", e quindi invece del file viene
caricato il suo nome.

Buona giornata!

-- 
Lorenzo Breda


Re: apache php e problemi nell' upload dei file

2023-05-16 Per discussione Federico Di Gregorio

On 15/05/23 18:53, Giuseppe Naponiello wrote:
ok, quindi in php.ini devo decommentare la sezione che gestisce la 
cartella tmp:


; Directory where the temporary files should be placed.
; Defaults to the system default (see sys_get_temp_dir)
;sys_temp_dir = "/tmp"

e invece di /tmp inserire il percorso corretto, cioè quello del servizio 
di apache? Giusto?


Temo di no. Quando Apache viene riavviato la directory usata come /tmp 
potrebbe cambiare e il PHP non la troverebbe più.


federico

Federico Di Gregorio federico.digrego...@dndg.it
DNDG srl  http://dndg.it
 heisenbug /hi:'zen-buhg/ /n./ [from Heisenberg's Uncertainty Principle
  in quantum physics] A bug that disappears or alters its behavior when
  one attempts to probe or isolate it.