在有条件兼容/通用服务器中,类似这样的东西
#define HTTP_MSG_LEN_MAX = ??;
...
int read_request(sockfd, ...)
{
char *buf = malloc(sizeof(char) * http_msg_len_max + 1);
int read_total = 0;
int read_once = 0;
while (zStrFind(buf, "\r\n\r\n") != -1 && read_total < HTTP_MSG_LEN_MAX) {
read_once = read(sockfd, buf + read_total, HTTP_MSG_LEN_MAX - read_total);
if (read_once < 0) {
fprintf(stderr, "read failed: %s \n", strerror(errno));
free(buf);
return -1;
}
read_total += read_once;
}
...
return 0;
}
我已经知道request 中 HTTP URI的最大长度,但是 HTTP 消息的最大长度是多少?
RFC2616没有提到它。