It can be time-consuming to produce correctly profiled images at numerous sizes for the web. My solution has been the following: upload to server full-size jpegs in their original profile with full meta-data. Then use a script running on the server to automatically prepare images for the web. This includes resize, sharpen, convert to sRGB, embed sRGB profile, strip out unwanted metadata, add caption & copyright meta-data, add border. All of that can be done by the Imagemagick command-line "convert" which is easy to install on any linux server.
I just wanted to chime in on this one as well (I didn't see it until today). The poster above has nailed it on the money.
For users that are running things like Wordpress, etc on a *nix based server and care about the image quality and colorspace and proper downsampling, etc ... make sure you are using Imagemagick (as above) in the WP backend and not GD. GD is probably one of the worst things out there in terms of mangling profiles -- it honestly just doesn't seem to know about them or care, it has some horrible horrible algorithms for downsampling and dithering, etc. Imagemagick, on the other hand, is probably the best "server-side" option out there in terms of converting images.
But then if you're a purist like me, you would rather prepare all the sizes of the image(s) needed for web yourself