Reverse proxy implentation / features

I use caddy as http/s reverse proxy or webserver and both works fine!

Anyone tested special setups like activesync or OutlookAnywhere? I don’t know the limitation of the proxy implementation.

Could caddy be used as TCP proxy too?

I think right now it only does http. But 0.9 allows plugins to make other server types I believe.


There is no need to support all the services, but it would be a nice feature. :wink:
At the Moment there are services which needs different reproxy Setups with apache, nginx, squid or haproxy.

I don’t know the differences, but use just caddy for most use cases would be a benefit.

Personally, I think Caddy core should stick with http. While I could see why some folks may want a generic TCP proxy in Caddy, I think it adds unnecessary complexity to the code base. I also doubt enough people would use the feature to make it worth it since NGINX is already such a good reverse proxy. Caddy as a web server has some converts from NGINX (and others like Apache) because of its unique value adds from a web server perspective (e.g., easy config, auto https, nice developer workflow support).

All this being said, I’m sure the community would support a TCP proxy plugin if someone developed it.

I’m not a developer (Caddy or otherwise) so don’t take my response for more than it’s worth.


It will.

On a technical level, Caddy core itself doesn’t implement any kind of specific server type. The HTTP server is a plugin just like any other, but it’s one that we assume responsibility for and it lives in the same repo. (Which I know is what you meant.)

I second @mvance’s suggestion: if you want TCP proxying, implement a TCP server type for Caddy. All the pieces are there, even for fully managed TLS; all you have to do is write a few lines to hook into it.

1 Like

I habe no experience with caddy / go.
So I can’t write that plugin myself in the near future.

But good to know it’s possible and should be easy with some knowledge. Thanks!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.