IIS 7 and Above
httpfilt.h ver 7.0 how to retrieve the Content-Length?
Last post Sep 27, 2017 07:12 AM by BOBdp1974
Aug 09, 2017 05:07 PM|BOBdp1974|LINK
I have just updated a ISAPI filter from version 4 (windows 2003) of httpfilt.h to 7 (windows 2008 and following).
Now I'm developing with IIS 10.
I have a problem,
with the previous IIS version, on SF_NOTIFY_SEND_RESPONSE calling http_filter_send_response->GetHeader was returning correctly the "Content-Length:" and the "X-Powered-By:" headers;
now I receive empty returns over the same headers, also calling GetServerVariable('ALL_RAW') is empty returns.
Some other headers as HTTP_ACCEPT work.
I have tried to change priority, but nothing change.
Do you have any hint to solve this trouble and retrieve all the headers correctly?
Btw. those are the headers of the server answer:
Date:Wed, 09 Aug 2017 16:06:18 GMT
Aug 10, 2017 08:19 AM|Yuk Ding|LINK
To further help you about this issue, I am trying to invoke someone experienced to help look into this thread, this may take some time and as soon as we get any result, we will post back.
Aug 10, 2017 11:15 AM|BOBdp1974|LINK
Aug 12, 2017 04:58 PM|BOBdp1974|LINK
hello, any news?
I have tested in windows 2008 and windows 2012 the filter works correctly.
I suppose it is a IIS 10 bug, so you should publish a hotfix to restore the correctly isapi filter interface (or it's a problem of configuration somewhere?).
Let me know.
Thank you and best regards.
Aug 15, 2017 09:32 AM|gtscdsi|LINK
Currently we don't have such report saying there is some bug for IIS 10 with isapi filter yet.
There is a big change for IIS 10, that the default HTTP protocol is HTTP/2. referring https://blogs.iis.net/davidso/http2
Maybe you could further check if it's related.
And to further confirm if it's a bug for IIS 10, i think we need more troubleshooting and debug, if you have company account, you could reach out to Customer service and support group for professional assistance!
Aug 15, 2017 02:36 PM|BOBdp1974|LINK
I'll do another test with CL VS17 httpfilt.h ver.10 sdk
Aug 19, 2017 09:53 PM|BOBdp1974|LINK
I have investigate with another coder, the conclusion is that IIS10 don’t put content-length reachable for dynamic content as aspx and php (the previous version of IIS instead do it).
Now, perhaps, can be possible to tell IIS10 to use the filter as the last in the chain, after .net processing, so having the content-length reachable?
Sep 27, 2017 06:58 AM|Yuk Ding|LINK
What do you mean that let IIS to put content-length reachable for dynamic content? If you could provide more detail. Maybe I could provide the steps to help you fix this issue.
Sep 27, 2017 07:12 AM|BOBdp1974|LINK
I have solved the issue, it's a behavior by design of IIS 10.
Simply IIS 10 don't put content-length header on dynamic content (asp.net, cgi, isapi).