Save file on server..

  • Thread starter Thread starter Ivan Demkovitch
  • Start date Start date
I

Ivan Demkovitch

Hi!

I would like to know if I can save File on Server using server-side code?

For example, I like to create thumbnail images and populate specific
directory.

Do I need specific permissions to do this? (I use public host)

Thanks!
 
Yes your code will need write permissions to the folder on the server that
you wish to save to.
Normally you'd grant such permission to the ASPNET user account.
In your case you'll probably need your web host to set up the necessary
permissions for you.
 
Ok.

Thanks, will try this ...


Steve C. Orr said:
Yes your code will need write permissions to the folder on the server that
you wish to save to.
Normally you'd grant such permission to the ASPNET user account.
In your case you'll probably need your web host to set up the necessary
permissions for you.

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://Steve.Orr.net
Hire top-notch developers at http://www.able-consulting.com
 
Steve,

I did it and it works perfect on my system and doesn't work on a host...

Do you know EXACTLY what they need to set on their server to allow file
operations?

Thanks a lot,
Ivan
 
By default the ASPNET user account needs write permission to the folder
you're trying to write to. It's as simple as that.

Of course your web host may have customized their servers so that your web
app is running under a different user account. Only they know these kinds
of details.

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://Steve.Orr.net
Hire top-notch developers at http://www.able-consulting.com
 
Ok..

It was simple (as far as setup) My web hositng panel allow me to change
permissions.

BUT, trying ASPNET account didn't do the trick.

Also I have IUSR_SOMETHING which didn't work eather.

I gave up and added permissions to "Everyone" which made it work.
I wonder if this is dangerous as far as security?
 
Yes I'd say that's pretty risky, especially on a shared server.
You should ask your web host what user account your web app is running under
and try to limit permissions to it.
Or you might be able to use impersonation to get it to run under a specific
account of your choosing.
Here's more info:
http://msdn.microsoft.com/library/d...-us/cpguide/html/cpconaspnetimpersonation.asp

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://Steve.Orr.net
Hire top-notch developers at http://www.able-consulting.com
 
Steve,

Thanks again, will try them 1 by 1.

I changed permissions to anyone to "Write only"

Which means worst thing I can get is a bunch of files??

I got another question:

I use Output stream to generate image on web page. I use custom http handler
for this.

To include picture I have code like:
<img title="Click to see item details"
src="/ASPNET/photo.aspx?ImageKey=6&Width=100&Height=0" border="0" />

photo.aspx is actually DLL which processes image.

I used output stream to output array of bytes and it works fine. Now I cache
scaled images and if image already scaled I load it and
save byte array to stream which works good as well.

However, I think it's steel performance issue to load image into array and
then save to stream.
It should be much better to just add url link to image somehow.

I tried something like: (in photo.dll)
//Just pass file name to response...
Response.ContentType = "text/html";
Response.Write(ScaledImageWebPath);
Response.End();

Which doesn't work...

DO you have any ideas on how this could be accomplished?

Thank you,
Ivan
 
You cannot write an image directly to an HTML page. You
can only put links to images in a page.
Normally your img tag would point to a jpg or a gif image file.
In your case you'll want it to point to a special page you've designed
specifically for outputting these images.
For example:
<img src='myimage.aspx' ...>

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://Steve.Orr.net
Hire top-notch developers at http://www.able-consulting.com
 
Steve,

See my reply to George in message "Output Stream Question"
<img src='myimage.aspx' ...> is exactly what I'm doing.

myimage.aspx is my http handler where code is.

Before I was taking image, scaled it and put into stream

Now I cache image once it requested and place in directory.

I just load bitmap and output to stream without scaling/other operations I
do.

It works faster, but I want avoid loading bitmap and somehow point browser
to this image..

Any ideas on how to approach it?
 
Back
Top