From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id ZrcNH8cpt163JQAA0tVLHw (envelope-from ) for ; Sat, 09 May 2020 22:08:07 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id cJXRLdQpt16xYQAAbx9fmQ (envelope-from ) for ; Sat, 09 May 2020 22:08:20 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 8CAA7940D66 for ; Sat, 9 May 2020 22:08:18 +0000 (UTC) Received: from localhost ([::1]:48666 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jXXdr-0004A6-93 for larch@yhetil.org; Sat, 09 May 2020 18:08:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:40556) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jXXdb-00047r-St for bug-guix@gnu.org; Sat, 09 May 2020 18:08:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:36984) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jXXda-0007c3-7R for bug-guix@gnu.org; Sat, 09 May 2020 18:08:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jXXda-0002uy-1h for bug-guix@gnu.org; Sat, 09 May 2020 18:08:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#37207: guix.gnu.org returns Last-Modified = Epoch Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sat, 09 May 2020 22:08:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 37207 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 37207@debbugs.gnu.org Received: via spool by 37207-submit@debbugs.gnu.org id=B37207.158906206911188 (code B ref 37207); Sat, 09 May 2020 22:08:02 +0000 Received: (at 37207) by debbugs.gnu.org; 9 May 2020 22:07:49 +0000 Received: from localhost ([127.0.0.1]:48530 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jXXdN-0002uO-8W for submit@debbugs.gnu.org; Sat, 09 May 2020 18:07:49 -0400 Received: from mira.cbaines.net ([212.71.252.8]:38828) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jXXdL-0002uF-JR for 37207@debbugs.gnu.org; Sat, 09 May 2020 18:07:48 -0400 Received: from localhost (unknown [46.237.174.28]) by mira.cbaines.net (Postfix) with ESMTPSA id B24F527BBE1; Sat, 9 May 2020 23:07:46 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id f87bf7c3; Sat, 9 May 2020 22:07:44 +0000 (UTC) References: <875zmhliqj.fsf@gnu.org> User-agent: mu4e 1.2.0; emacs 26.3 From: Christopher Baines In-reply-to: <875zmhliqj.fsf@gnu.org> Date: Sat, 09 May 2020 23:07:41 +0100 Message-ID: <87o8qwg3te.fsf@cbaines.net> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Scanner: scn0 X-Spam-Score: -1.61 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Scan-Result: default: False [-1.61 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.53976551118503]; MX_INVALID(1.00)[cached]; DWL_DNSWL_FAIL(0.00)[209.51.188.17:server fail]; R_SPF_ALLOW(-0.20)[+ip4:209.51.188.0/24:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.09), country: US(-0.00), ip: 209.51.188.17(-0.54)]; TO_DN_NONE(0.00)[]; MAILLIST(-0.20)[mailman]; SIGNED_PGP(-2.00)[]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:22989, ipnet:209.51.188.0/24, country:US]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; FROM_NEQ_ENVFROM(0.00)[mail@cbaines.net,bug-guix-bounces@gnu.org]; FROM_HAS_DN(0.00)[]; URIBL_BLOCKED(0.00)[gnu.org:email]; MIME_GOOD(-0.20)[multipart/signed,text/plain]; MIME_TRACE(0.00)[0:+,1:+,2:~]; DMARC_NA(0.00)[cbaines.net]; HAS_LIST_UNSUB(-0.01)[]; RCPT_COUNT_ONE(0.00)[1]; DNSWL_BLOCKED(0.00)[209.51.188.17:from]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.51.188.17:from]; RCVD_COUNT_SEVEN(0.00)[9]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: tSsl/STI9Uxp --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Ludovic Court=C3=A8s writes: > Since the use of the =E2=80=98static-web-site=E2=80=99 service, which put= s web site > files in the store, nginx returns a =E2=80=98Last-Modified=E2=80=99 heade= r that can > trick clients into caching things forever: > > --8<---------------cut here---------------start------------->8--- > $ wget --debug -O /dev/null https://guix.gnu.org/packages.json 2>&1 | g= rep Last > Last-Modified: Thu, 01 Jan 1970 00:00:01 GMT > --8<---------------cut here---------------end--------------->8--- > > We should tell nginx to do not emit =E2=80=98Last-Modified=E2=80=99, or t= o take the > state from the /srv/guix.gnu.org symlink, if possible. I ended up looking at this again in relation to Repology [1]. 1: https://github.com/repology/repology-updater/issues/218#issuecomment-525= 905704 Going back to that comment, given that the Last-Modified header (and the ETag) is wrong, it's probably sensible to remove them. That might even fix the issue with Repology fetching the packages.json file. Alternatively (or in addition), we could run a really simple Guile web server that just serves the packages.json file with the right Last-Modified value, and have NGinx proxy requests to that server. This would be pretty easy to setup I believe, and would allow providing a correct value. Thoughts? Chris --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEEPonu50WOcg2XVOCyXiijOwuE9XcFAl63Ka1fFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcACgkQXiijOwuE 9Xe2XBAAthr2GVCI1itmIJdRvk2x77KmpyUlOWGN9clJwBMinxS5AoqWRMrTRUiD UfMPp3/ngld5qT3WmuJDnUP/65krZ6+Pq1Add+KdetJacrpblnNY8/N3wMtv88J0 Cy5mkJstWZ2jP5Lj72kcW5WpW0mg+KqBh/76IGd9JUZJDNExcXFOTUYhJ2+qIhci fyV7dufFYUobMFhxjwnR4N4eYnBowJR8crdRNuej7W7AB+dy8LCECeb/M8x5/xBh tYoJnzGJFQezH1bCyiuPAzEuvkgc9WxAHik+bfGBrzcRQY1Jmw19mb/FjEuPKQFY Sw8FrcvlF91uYnApcxRTrWdvSRihXkNkINofAtzlrg/9WOc7tnt5k9SBuYCqmRax MQgGS6AVOnyfjXcALr/BLpRN5N0GubX52m3s3+JQX7UQPY22VdtxOjhIFiNSA4FU 4ExdtX37g+5aUWb3/qmyleL9oZ5OmzkKjUFceXsQlnUXYdfa5oWBLtUgLANXwekg mS6idRNHqz1sAbYTvc2baxv42hMT9XE3C6Lg/M+TMospGJbmVOPDeJZ96DQPEj/X qC1NRk+KWc9eTIdFt2NbMM21TefWpBGwSp+AktVPbGkzwkqGUMUHoCqNVbAz3U7L Xahl0P0FqZUXSK4/itMrXxGRjtBoNL81nwR1AryoZf8pVEAOfts= =sdwC -----END PGP SIGNATURE----- --=-=-=--