Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
mholt
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
48 ms
·
691.
▲
by
mholt
5y ago
Good point! I should update this site and mention that.
692.
▲
by
mholt
5y ago
You can thank Debian for that. We've tried for years and eventually gave up. But you can add our source anyway: https://caddyserver.com/docs/install#debian-ubuntu-raspbian
693.
▲
by
mholt
5y ago
It's been years since I looked at the code/config but I literally think it's a "strings.Contains()" call... so not even parsing at all. A proper implementation would make for a good Caddy module.
694.
▲
by
mholt
5y ago
It's based on your browser's Accept-Language header, nothing to do with location. (It's only a naive implementation of parsing the Accept-Language header. Sorry, was all I could do at the time.)
695.
▲
by
mholt
5y ago
Yep, just enable templates with the 1 line of config and then put {{markdown "here"}} in your web pages and there you have it. Caddy's entire docs are powered by this kind of templating, it's quite useful: https:/&
696.
▲
by
mholt
5y ago
Sounds like a fun project. Assuming you're talking about web servers, did you know Caddy can do that? Simply configure each one to use the same storage backend and Caddy will automatically coordinate management as a cluster, and share
697.
▲
by
mholt
5y ago
Caddy does. https://community.letsencrypt.org/t/questions-about-renewing... And this is one reason why I keep advocating for certificate automation to be built into services/apps, rather than patched on the outs
698.
▲
by
mholt
5y ago
With my workflows, I really don't need that inch of my editor. The minimap is useful because it lets me instantly go anywhere in the file using visual cues. Some minimaps show you details when you hover or click and drag. Anyway, I hav
699.
▲
by
mholt
5y ago
Use Caddy for enterprise stuff, too. Enterprise deployments deserve memory safety, too.
700.
▲
by
mholt
5y ago
lol: "Access main program. Access main security. Access main program grid." Alrighty then.
701.
▲
by
mholt
5y ago
I wrote Timeliner [0] and am writing its successor, Timelinize [1], to download all my family's stuff to our own computer. [0]: https://github.com/mholt/Timeliner [1]: https://twitter.com/timeliniz
702.
▲
by
mholt
5y ago
Caddy 2 can do that at least, but it's something you have to command it to do. :)
703.
▲
by
mholt
5y ago
Good point, and I'm not sure which deployment method is more popular. In general I am personally not a fan of Docker due to added complexities (often unnecessary for static binaries like Caddy) and technical limitations such as this. A
704.
▲
by
mholt
5y ago
Yep, we don't use SO_REUSEPORT. We just pass it from the old process to the new one.
705.
▲
by
mholt
5y ago
> an application should never be able to replace itself with "random code" to be executed. To clarify: it doesn't, nor has it ever worked that way. You have to be the one to do that (or someone with privileges to write to
706.
▲
by
mholt
5y ago
We did this for Caddy 1 too [1]. It was really cool. I am not sure how many people used this feature, so I haven't implemented it for Caddy 2 yet, and in the ~two years that Caddy 2 has been released, I've only had the request onc
707.
▲
by
mholt
5y ago
... for one account. It takes N times as many more resources to do that for N more accounts. The attacks are impractically expensive for most attackers.
708.
▲
by
mholt
5y ago
It means that if someone sees your config file, they can't log into your sites and impersonate users (unless they have a LOT of money/resources and can reverse secure hashes -- one account at a time). It makes attacks impracticall
709.
▲
by
mholt
5y ago
You can do either. To Caddy, "entire domain" or "specific endpoints" are all the same thanks to request matchers. You can precisely customize which requests have basic auth applied to them: https://caddyserver
710.
▲
by
mholt
5y ago
Thanks for the kind words!
711.
▲
by
mholt
5y ago
Caddy comes with basic auth support because it's still useful for a lot of use cases. IMO the biggest weakness of basicauth (when deployed over TLS) is the fact that most server configurations store the passwords in plaintext, usually
712.
▲
by
mholt
5y ago
What could make the docs better? What solved your problem?
713.
▲
by
mholt
5y ago
Not a "big project/service" but a Go project that uses Sqlite is one of my own, Timeliner[1] and its successor, Timelinize[2] (still in development). Yeah the cgo dependency kinda sucks but you don't feel it in code, jus
714.
▲
by
mholt
5y ago
What's your take on developing a new code search instead of partnering with an existing global code graph like Sourcegraph? What are the advantages of GitHub Code Search over Sourcegraph?
715.
▲
by
mholt
5y ago
I'm surprised... I absolutely loved my interview with Sourcegraph. I kind of wish every tech company interviewed like they do.
716.
▲
by
mholt
5y ago
> The absolutist statement "Go is memory safe" is simply incorrect. That absolutist statement is also incorrect. "Go has strong memory safety guarantees" is more accurate. But neither "Go is memory safe" n
717.
▲
by
mholt
5y ago
Thank you for sharing your experiences. Lots of positive feedback here has helped to offset the negative, so it's only a little exhausting today. :)
718.
▲
by
mholt
5y ago
That's great to hear!
719.
▲
by
mholt
5y ago
Thanks for your feedback. We try to avoid tight integration with specific, third-party providers as much as possible to keep Caddy light and flexible. Cloudflare is popular, but is also not a majority use case for Caddy users, in our experi
720.
▲
by
mholt
5y ago
Or without a config file, simply: $ caddy file-server --root /path/to/files
More ›