This looks to be very much IE specific issue. This happens when server sends following information in header
Pragma=No-cache
Cache-Control=no-cache
For IE to open an excel file it first needs to temporarily cache/store it in its default Temporary Internet Files folder and then launch it from there. If it gets aforementioned information in the header then it will not be able to save it on disk at temporary location and you might get some error like "file not found or does not exist".
To fix it you need to check following things
1. Look into the code where you are generating response (to be launched in excel), make sure you are not setting content to be expired immediately. This can be done by following manners. You need to remove following lines to make export to excel work in SSL.
response.CacheControl = "no-cache"
response.AddHeader("Pragma", "no-cache")
response.ExpiresAbsolute = System.Date.FromOADate(Now.ToOADate - 1)
2. I am not sure about other webserver like Apache but if you are using IIS then you need to do as following
a) Right Click on default Website
b) Go to HTTP-HEADER
c) See if "Enable Content Expiration" checkbox is checked
d) if it is checked then see if underneath "Expires Immediately" is checked, you need to uncheck it
Please note that "Enable Content Expiration" works only for SSL so you won't find the same issue with same setting of IIS using Http.
Pragma=No-cache
Cache-Control=no-cache
For IE to open an excel file it first needs to temporarily cache/store it in its default Temporary Internet Files folder and then launch it from there. If it gets aforementioned information in the header then it will not be able to save it on disk at temporary location and you might get some error like "file not found or does not exist".
To fix it you need to check following things
1. Look into the code where you are generating response (to be launched in excel), make sure you are not setting content to be expired immediately. This can be done by following manners. You need to remove following lines to make export to excel work in SSL.
response.CacheControl = "no-cache"
response.AddHeader("Pragma", "no-cache")
response.ExpiresAbsolute = System.Date.FromOADate(Now.ToOADate - 1)
2. I am not sure about other webserver like Apache but if you are using IIS then you need to do as following
a) Right Click on default Website
b) Go to HTTP-HEADER
c) See if "Enable Content Expiration" checkbox is checked
d) if it is checked then see if underneath "Expires Immediately" is checked, you need to uncheck it
Please note that "Enable Content Expiration" works only for SSL so you won't find the same issue with same setting of IIS using Http.