diff --git a/test/data/dredirgz/index.html.gz b/test/data/dredirgz/index.html.gz
new file mode 100644
index 00000000..8deb24e9
Binary files /dev/null and b/test/data/dredirgz/index.html.gz differ
diff --git a/test/unit_test.c b/test/unit_test.c
index b6f66038..f9b07119 100644
--- a/test/unit_test.c
+++ b/test/unit_test.c
@@ -650,6 +650,10 @@ static void test_http_server(void) {
ASSERT(fetch(&mgr, buf, url, "GET /dredir/ HTTP/1.0\n\n") == 200);
ASSERT(cmpbody(buf, "hi\n") == 0);
+ ASSERT(fetch(&mgr, buf, url, "GET /dredirgz/ HTTP/1.0\n\n") == 200);
+ ASSERT(cmpheader(buf, "Content-Type", "text/html; charset=utf-8"));
+ ASSERT(cmpheader(buf, "Content-Encoding", "gzip"));
+
ASSERT(fetch(&mgr, buf, url, "GET /..ddot HTTP/1.0\n\n") == 301);
ASSERT(fetch(&mgr, buf, url, "GET /..ddot/ HTTP/1.0\n\n") == 200);
ASSERT(cmpbody(buf, "hi\n") == 0);