Problema con le autorizzazioni durante il caricamento di immagini tramite PHP in IIS

StackOverflow https://stackoverflow.com/questions/622318

  •  05-07-2019
  •  | 
  •  

Domanda

Abbiamo appena spostato un sito Web su un nuovo server, entrambi i server sono Windows Server 2003 con IIS come server Web.

Quando si caricano immagini, è necessario che i file caricati dispongano di determinate autorizzazioni per l'account SERVIZIO DI RETE. Le immagini vengono caricate tramite PHP, quindi filtrate da ImageMagick utilizzando il binario mogrify.exe a scopo di ridimensionamento e inserite in una nuova cartella creata da PHP.

Il problema che stiamo riscontrando è che il file caricato non eredita le autorizzazioni del SERVIZIO DI RETE nonostante la cartella lo faccia.

Ho eseguito filemon per vedere eventuali errori e ottenere quanto segue:

mogrify.exe: 6396 OPEN C: \ inetpub \ wwwroot \ example.com \ data \ 334480 \ test.jpg ACCESS DENIED NT AUTHORITY \ NETWORK SERVICE

Il motivo per cui è richiesto l'accesso al SERVIZIO DI RETE è dovuto a uno script ASP.NET che utilizziamo per ridimensionare l'immagine al volo. Ho cercato Google ma non riesco a trovare una soluzione. Qualche idea?

È stato utile?

Soluzione

Gestito per risolvere il problema, ho cambiato la directory upload tmp in php.ini in C: \ Test e ho dato a Test le autorizzazioni che avevo richiesto, avevo già fatto questa modifica ma a ulteriore ispezione upload_tmp_dir è impostato due volte nel php. file ini. I file caricati ereditano le autorizzazioni della directory temporanea.

Altri suggerimenti

Ti sei assicurato che " SERVIZIO DI RETE " ACL si applica a " Questa cartella, sottocartelle e file " ;, ovunque sia applicata. Inoltre, prova a creare una nuova cartella altrove con lo stesso ACL e verifica se i file creati da PHP ereditano l'autorizzazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top