Commit Graph

21 Commits

Author SHA1 Message Date
Laurence Withers c2d7bdaa71 handler: fix sendfile to be non-blocking
Having done a bit more research on exactly how to use sendfile()
effectively with Go's own event loop, we can now leave the HTTP socket
in non-blocking mode and correctly integrate with the event loop to wait
for the socket to be writeable once more.
2019-05-28 12:57:59 +01:00
Laurence Withers 97a823d748 packserver: use htpack v1.1.1 2019-05-10 13:22:53 +01:00
Laurence Withers eac79eb605 Set blocking mode on hijacked fds for sendfile 2019-05-10 13:21:22 +01:00
Laurence Withers 21a18eced6 cmd/packserver: use Cache-Control: no-cache
Rather than setting "Cache-Control: no-store", use "no-cache". The
difference is that "no-store" tells the browser that it must always
completely re-fetch the resource; whereas "no-cache" means that the
browser can write the resource to disk but must re-validate it (e.g.
using Etags) before re-using it.
2019-04-25 14:47:13 +01:00
Laurence Withers 246aefbec4 cmd/packserver: add --index-file argument 2019-04-25 14:45:18 +01:00
Laurence Withers be86cbaed3 Handler: add SetIndex
This allows setting an index.html (or equivalent) filename; this means that
we can serve requests to "/foo" with the contents of "/foo/index.html".
2019-04-25 14:17:55 +01:00
Laurence Withers e28f687057 cmd/htpacker, cmd/packserver: update dependencies 2019-04-15 14:19:12 +01:00
Laurence Withers 5328627998 Update dependencies 2019-04-15 14:15:43 +01:00
Laurence Withers 527b361b51 Finish up the initial packserver implementation 2019-04-15 14:10:26 +01:00
Laurence Withers ea77f42dc3 Note a TODO in the README 2019-04-12 09:16:23 +01:00
Laurence Withers e47ed4e4c2 cmd/htpacker now split into its own module 2019-04-12 09:15:28 +01:00
Laurence Withers ce6749f0a3 Workaround for splitting to multiple modules 2019-04-12 09:14:21 +01:00
Laurence Withers fdd1990e89 Reorganise ready to split into modules 2019-04-12 09:07:17 +01:00
Laurence Withers 84ea7c3673 cmd/htpacker: lots more WIP 2019-03-29 09:18:07 +00:00
Laurence Withers feb25bf276 Handler: close TCP conn after Sendfile
Since we hijacked the HTTP connection, we need to close the underlying TCP
connection after calling Sendfile.
2019-03-29 09:17:46 +00:00
Laurence Withers d42094ea72 Handler: call path.Clean first
Cope with things like /foo//bar by calling path.Clean before searching for
path in the map.
2019-03-29 09:17:15 +00:00
Laurence Withers 5c05a75fba Further work; tidying up, begin cmdline tool 2019-03-13 21:55:31 +00:00
Laurence Withers 2a25d80249 Handler implementation
Currently missing range support, but compression and etag processing is
in along with basic header support. Still needs unit tests.
2019-03-08 09:16:38 +00:00
Laurence Withers d836bf3cc7 Further work-in-progress, basic packing and inspecting 2019-03-05 18:41:02 +00:00
Laurence Withers e864d0829e Basic work-in-progress, can pack basic files now 2019-02-24 12:17:57 +00:00
Laurence Withers 0fc26e5414 Initial README 2019-02-23 13:47:59 +00:00