I dont know what html.length does im not using esp library.
If html.length is calculating length of html portion of data to be send then you have to add your http header size if its const size then add to the length and send via cipsend but then you still have to mention html length i.e. html portion size in “content size” in http header.
Try with chrome first that browser doesnt care about correct headers send html portion only.
Another advice split your data to be sent into chunks but still in cipsend mention not the chunk size but size of all data. Then send with chunks esp will wait till you will send everything mentioned in size.
@PaulRB- esp01 adapter does converting to proper logic level and has 1000uf capacitor to solve voltage drop issues.
@PieterP you wrote about reasons not to use AT commands can you tell us reasons? I am using AT commands in my projects its very stable would like to know what is wrong with that style/method.
I came into that dilema to use at or write code for esp then i thought if at firmware is written by espressif then it must be better then any library written for it. That was the only reason i decide to adapt for esp AT commands.