PDF galley load gets 404

We have three journals running. Two are working fine. The third just published its first issue. Clicking the viewer buttons for the PDFs result in the viewer itself loading, but an nginx 404 error page appearing under the top blue bar. The download link at top right of the page works.

OJS 3.3.0.15
Postgres 14.7
PHP-FPM 7.4.33

An example article page is here:
https://journals.h-net.org/America250/article/view/2024_Chandler_Editorial

Based on a little database spelunking, the expected file appears have the “hash”:
4289|journals/6/articles/300/670816e95ea54.pdf|application/pdf
and to exist:
/usr/local/hnetojsuploads/journals/6/articles/300/670816e95ea54.pdf

We previously had a problem with HTML galleys on another journal which was caused by nginx configuration (short circuiting delivery of various “static” files, e.g. css, js, images, etc, but also html, so we exempted /article/download/ paths from this). While the current problem seems like it’s nginx-related, I not sure it’s in the same configuration clause.

What’s puzzling me is that the working journals’ PDFs seem to be delivered exactly the same way as America250, but A250 gets a 404 for the PDF viewer.

So, who can see what I’m missing?

try checking your ojs>plugin>generic folder permission… last time i help someone with this problem. their permission is not correct and solve this problem. pdf cannot view but can be downloaded.

Well, I don’t see anything wrong with the permissions. But that’s not really a surprise, because:

  1. We aggressively maintain the permissions
  2. Other journals can load the viewer just fine

But, exploring this did lead me to notice that the working journals are using the generic PDF viewer instead of the Hypothes.is copy of pdf.js. The latter was missing because for some reason the submodule stuff isn’t working right.

So problem solved. Thanks!