I fixed this problem at our site, and I'm posting the solution in the hopes that it will help someone in the future.
Looking further into the problem, I found the RoundCube, did indeed have code in place to handle this oddity with IE of not being able to download when SSL was enabled. In the ~/program/include/rcube_shared.inc file I saw the code:
// We need to set the following headers to make downloads work using IE in HTTPS mode.
if (isset($_SERVER['HTTPS'])) {
header('Pragma: ');
header('Cache-Control: ');
}
This turns off caching for SSL connections. So, my issue was why wasn't this code being executed on our site? The variable being tested 'HTTPS' was indeed not set for our virtual host, I was able to verify that by creating a simple php script with the phpinfo() command in it. HTTPS was not part of the environment.
However, I did find that when I connected to our server using ServerName, I did see the HTTPS environment variable set. Hmmm, that was strange. Looking further, I learned the HTTPS variable is set by mod ssl. I had mod ssl loaded, but only enabled for the default Virtual Host. I was generating https URLs using the Rewrite command. I had not enabled the SSLEngine in the specific virtual host definition I had setup for RoundCube. As soon as I did that, downloads from IE worked great.
Hoping this can save someone else some time!
Jackie