|
Posted by J.O. Aho on 02/16/07 09:26
kkadrese@yahoo.com wrote:
> Hello group,
>
> I'm implementing file upload in webpage. And got stuck with file
> permissions. An uploaded file gets 0600 and as such cannot be shown in
> the webpage, as far as I understand it needs at least 0644.
>
> So I did a little investigation and found:
> 1) the upload folder has 0755, set by hand.
> 2) echo `umask` in the upload folder and actually in the higher levels
> of the webserver folders gives 0022.
Why use "echo"? you get the value by just using umask without arguments.
> 3) a file created by fopen in php file called via webserver gets 0644,
> in the upload folder.
> 4) and, as already said, uploaded file gets 0600.
from the php.ini:
; The file storage module creates files using mode 600 by default.
; You can change that by using
> Where did that 0022 (Group,Other: Write) appear from? Is it right for
> the webserver?
The server/php don't regard the umask that the standard shell has.
I do guess the easiest is to change the privilege bits from within php with
chmod() or set another umask with umask().
http://www.php.net/manual/en/function.chmod.php
http://www.php.net/manual/en/function.umask.php
--
//Aho
[Back to original message]
|