l...@gnu.org (Ludovic Courtès) writes: > Nice! Are you using the nginx config that’s in guix-maintenance.git?
No, I'm not using that at the moment. In the future, if I set up any nginx servers to accomplish the same task, I will definitely use it. I would prefer to run my own servers, but for now this is something I can do immediately to help the project, so I decided to do it. CloudFront is a service, so you use its API (or the AWS Management Console, which is a web UI for the API) to create a "distribution" and configure it to use hydra.gnu.org as its "origin". A little extra work is required to glue everything together. For example, I had to create a CNAME pointing from hydra-mirror.marusich.info to d2xj50ygrk34qq.cloudfront.net, which is the canonical name of my distribution. Once it's configured, all requests sent to hydra-mirror.marusich.info are serviced by a nearby point of presence in the CloudFront content distribution network, and the results are cached. I've noticed that Hydra does not include cache-related headers (e.g., Cache-Control). Perhaps for this reason, the nginx config you linked seems to pick arbitrary caching settings. When using CloudFront, a distribution can be configured to respect the Cache-Control headers sent by the origin server. Does nginx provide similar functionality? Would it make sense to have hydra.gnu.org return such headers? For now, I've configured hydra-mirror.marusich.info to cache all successful requests for 1 week, and to respect cache-related headers from the hydra.gnu.org if it ever decides to send them. This seemed like a reasonable configuration for data which is not expected to change. Chris