View Issue Details

IDProjectCategoryView StatusLast Update
0005598GNUnetotherpublic2019-05-12 13:29
Reporterng0Assigned ToChristian Grothoff 
PrioritynormalSeveritytextReproducibilityhave not tried
Status closedResolutionnot fixable 
Product VersionSVN HEAD 
Target Version0.11.4Fixed in Version0.11.4 
Summary0005598: Various files still point to old
DescriptionMost of our READMEs, excluding gnunet I think I fixed this, are still pointing to variations of
while it should be in cases where it makes sense.

It would be easier to have an appache config which tries for any given URL when fails for
an URL before falling back to 404.
TagsNo tags attached.



2019-02-22 11:40

developer   ~0013942

This is major, because gnunet-gtk should be released around the same time and still has it.


2019-02-22 12:31

developer   ~0013943

gnunet: URLs in comments remain
gnunet-gtk: fixed

Both should be updated to, but this will take more time.


2019-03-15 00:13

developer   ~0014202

Fast fix (ie don't do this): simply use in place.
Proper fix: Link to the section on and similar places.
Annoying work, low hanging fruit for 0.11.1


2019-03-15 00:14

developer   ~0014203

When I write "files" I mean, clone the repos and run a recursive text search for "" in there. For gnunet this is now mostly src/


2019-03-16 18:07

reporter   ~0014212

This is also upsetting web search results greatly and frustrates users that are hit with 404 on arrival.


2019-03-16 19:39

developer   ~0014215

I like this approach and don't think we should intentionally break old pages


2019-03-20 23:48

developer   ~0014224

Let me stress the importance of the broken links:

1) it's bad publicity, people expect to find information even if in the end it turns out to be the old one
2) I get this question very often "where did XY go on the page? It's gone!" or something like that
3) Also wldhx gets this question.


2019-03-20 23:49

developer   ~0014225

Since only grothoff can resolve this on the server side, assigned to grothoff

Christian Grothoff

2019-04-10 13:33

manager   ~0014279

Eh, I'm just not sure _how_ this can be done, especially given that there are like 3000+ URLs on and manually putting each of those into the configuration file with a redirection to old would seem, eh, excessive. I've not yet been able to find a general rule for "test if it exists locally, and if not redirect to old *if* it exists there".

Christian Grothoff

2019-04-10 13:33

manager   ~0014280

Note that we need this for now for Apache, in the future for nginx.


2019-04-10 13:41

developer   ~0014281

Last edited: 2019-04-10 13:43

View 2 revisions

server {
  # …
  location / {
    error_page 404 =302$request_uri;
    try_files $uri $uri/ =404;

For nginx, if I understand this proposal right

The idea is that upon 404, we try 302 and if that doesn't work, 404. Unless I'm wrong about how it's to be read.

Christian Grothoff

2019-04-10 13:48

manager   ~0014282

That's nginx syntax, runs Apache. I've tried this:

       RewriteCond %{REQUEST_URI} !-F
       RewriteCond{REQUEST_URI} -U
       RewriteRule ^/(.*)$$1 [R=302,L]

but with neither -F nor -U it works properly: the first condition always fails with -F (redirecting everything, including / and /en/) and always succeeds with -U (redirecting nothing). So neither test works properly for 404 status codes.

Christian Grothoff

2019-04-10 13:50

manager   ~0014283

Now, a possible solution: get nginx running on firefly, deploy the new Web site there, target DNS record for to firefly and then use the nginx rule to redirect to on tripwire. Now, except for the DNS change, that's something you have the rights to do...


2019-04-10 13:52

developer   ~0014284


I still haven't gotten to reading the mail wrt firefly, I want to finish refactoring first (this week) and have some other things going on.


2019-04-11 13:44

developer   ~0014288

It's a bit more difficult.

Since some URLs, for example in your "GNU Name System: 2019 Edition" slides point to the old
Drupal books, we need to make a Drupal Book -> Texinfo html pages redirect as well.

Ideally this would happen in my rewrite of the bibliography: We link to the detail page of a single entry of the bibliography, identified by a unique URL. In addition to the current view and generated bibtex it contains further metadata like link to code and link to contemporary documentation ( jumps to or whatever we decide on.. just as a quick idea of the top of my head)


2019-04-20 13:03

developer   ~0014315

so now that is mostly digital dust, I think the scope of the solution for this ticket
has been narrowed to:
find old URLs.
fix old URLs by pointing to existing URLs which probably contain the same or updated content.
if no existing URL is available, point it out.

speaking of which, I think our help output should really point to and not
the software page? It effectively redirects to anyway.

Christian Grothoff

2019-05-02 14:34

manager   ~0014371

I like the reference to, keeps it symmetric with other GNU packages and stresses our gnu-ishness ;-)

Anyway, I think we can close this bug, as 'finding broken URLs' is an eternal task that we can never finish in the current Web architecture ;-)

Issue History

Date Modified Username Field Change
2019-02-22 11:39 ng0 New Issue
2019-02-22 11:40 ng0 Note Added: 0013942
2019-02-22 11:41 ng0 Assigned To => ng0
2019-02-22 11:41 ng0 Status new => assigned
2019-02-22 11:51 ng0 Summary READMEs still point to old => Various files still point to old
2019-02-22 11:51 ng0 Description Updated View Revisions
2019-02-22 12:30 ng0 Priority high => normal
2019-02-22 12:31 ng0 Note Added: 0013943
2019-02-22 12:31 ng0 Assigned To ng0 =>
2019-02-28 11:49 Christian Grothoff Status assigned => confirmed
2019-02-28 11:49 Christian Grothoff Target Version => 0.11.1
2019-03-15 00:13 ng0 Note Added: 0014202
2019-03-15 00:14 ng0 Note Added: 0014203
2019-03-16 18:07 ic.rbow Note Added: 0014212
2019-03-16 19:39 ng0 Note Added: 0014215
2019-03-20 23:48 ng0 Note Added: 0014224
2019-03-20 23:48 ng0 Assigned To => Christian Grothoff
2019-03-20 23:48 ng0 Status confirmed => assigned
2019-03-20 23:49 ng0 Note Added: 0014225
2019-04-03 12:16 Christian Grothoff Product Version => SVN HEAD
2019-04-03 12:16 Christian Grothoff Target Version 0.11.1 =>
2019-04-10 13:33 Christian Grothoff Note Added: 0014279
2019-04-10 13:33 Christian Grothoff Status assigned => feedback
2019-04-10 13:33 Christian Grothoff Note Added: 0014280
2019-04-10 13:41 ng0 Note Added: 0014281
2019-04-10 13:41 ng0 Status feedback => assigned
2019-04-10 13:43 ng0 Note Edited: 0014281 View Revisions
2019-04-10 13:48 Christian Grothoff Note Added: 0014282
2019-04-10 13:50 Christian Grothoff Note Added: 0014283
2019-04-10 13:52 ng0 Note Added: 0014284
2019-04-10 13:52 ng0 Assigned To Christian Grothoff => ng0
2019-04-10 13:53 ng0 Status assigned => acknowledged
2019-04-11 13:44 ng0 Note Added: 0014288
2019-04-20 13:03 ng0 Note Added: 0014315
2019-04-20 13:03 ng0 Assigned To ng0 =>
2019-05-02 14:34 Christian Grothoff Note Added: 0014371
2019-05-02 14:34 Christian Grothoff Assigned To => Christian Grothoff
2019-05-02 14:34 Christian Grothoff Status acknowledged => resolved
2019-05-02 14:34 Christian Grothoff Resolution open => fixed
2019-05-02 14:34 Christian Grothoff Fixed in Version => 0.11.4
2019-05-02 14:34 Christian Grothoff Severity major => text
2019-05-02 14:34 Christian Grothoff Resolution fixed => not fixable
2019-05-02 14:34 Christian Grothoff Target Version => 0.11.4
2019-05-12 13:29 Christian Grothoff Status resolved => closed