[Solved] [OJS 3.1.1] Broken article links on journal page

Hello all,

Can you please have a look at the link below and click on the article link on this page and try to buy the article?
http://ojs3.equinoxpub.com/index.php/AEFS/

Any link to the PDF file article or the actual article leads to a 404 Not Found page, here is an example:
http://ojs3.equinoxpub.com/index.php/AEFS/article/view/10.1558%2Faefs.32472

I am sure that the pdf files have been uploaded in the system properly, I can download the pdf from the journal dashboard → submission session.

I think some plugin to display that page page doesn’t work properly, but which plugin?

I don’t have any php error in the logs, the only interesting thing I see in the logs is :

[Tue Jun 12 11:28:38.539305 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning: Declaration of CoinsPlugin::register($category, $path) should be compatible with LazyLoadPlugin::register($category, $path, $mainContextId = NULL) in /var/www/ojs/plugins/generic/coins/CoinsPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.539333 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of PiwikPlugin::register($category, $path) should be compatible with LazyLoadPlugin::register($category, $path, $mainContextId = NULL) in /var/www/ojs/plugins/generic/piwik/PiwikPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.539340 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of PiwikPlugin::getTemplatePath() should be compatible with Plugin::getTemplatePath($inCore = false) in /var/www/ojs/plugins/generic/piwik/PiwikPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.539359 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of SubscriptionSSOPlugin::register($category, $path) should be compatible with LazyLoadPlugin::register($category, $path, $mainContextId = NULL) in /var/www/ojs/plugins/generic/subscriptionSSO/SubscriptionSSOPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.539381 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of HypothesisPlugin::register($category, $path) should be compatible with LazyLoadPlugin::register($category, $path, $mainContextId = NULL) in /var/www/ojs/plugins/generic/hypothesis/HypothesisPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.626049 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of DRIVERDAO::setOAI(&$oai) should be compatible with PKPOAIDAO::setOAI($oai) in /var/www/ojs/plugins/generic/driver/DRIVERDAO.inc.php on line 19, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.626862 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of CustomBlockPlugin::getBlockContext() should be compatible with BlockPlugin::getBlockContext($contextId = NULL) in /var/www/ojs/plugins/generic/customBlockManager/CustomBlockPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions

[Tue Jun 12 11:28:38.626875 2018] [php7:warn] [pid 4232] [client 92.6.209.161:55007] PHP Warning:  Declaration of CustomBlockPlugin::getEnabled() should be compatible with BlockPlugin::getEnabled($contextId = NULL) in /var/www/ojs/plugins/generic/customBlockManager/CustomBlockPlugin.inc.php on line 0, referer: http://ojs3.equinoxpub.com/index.php/AEFS/submissions`

The field “remote_url” on table submission_galleys is empty for all the submissions.
Hope this can help.

Thanks

Hi @marcello8080,

It looks like you’ve entered the DOIs as custom URL identifiers; is that correct? If so, it’s the / characters in the DOIs that are probably causing trouble – Apache sometimes doesn’t treat these as OJS expects, depending on its configuration. See apache - %2F in URL breaks and does not reference to the .php file required - Stack Overflow for details.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @asmecher
Thanks for your advice,
But I don’t understand why OJS use the DOI in order to identify the article, should it use the article/issue ID instead?
In fact if I swap the DOI in url with the article ID the browser display the article properly, here is an example:
http://ojs3.equinoxpub.com/index.php/AEFS/article/view/10.1558%2Faefs.32475
swap ID 21 with DOI 10.1558%2Faefs.32475
http://ojs3.equinoxpub.com/index.php/AEFS/article/view/21

Any idea?

Thanks

I finally found out what caused the broken link problem on the article page and on the PDF/file display page.
OJS has been set up in order to use the DOI to identify a article, but the DOI often contains the character ‘/’ , this broke the url in OJS.

A solution could be no use any field in “Public URL identifier”, in this way OJS will use the article/issue ID to identify the article/issue page.
Please follow the following steps in order to fix this problem:

  • Go to the journal dashboard and click on “Submission” on the left menu.
  • Edit the submission you want to change clicking on it
  • Now click on “Metadata” on the top right corner, then click on “Identifier”
  • please look at the first picture attached, delete the DOI from the “Public URL identifier” and add the DOI in the field below.
  • please loot at the second picture attached, in this way we have the DOI stored in the DOI field and the URL field empty (which means OJS will use article/issue ID as URL)
  • click on save.

Hope this help the future people :wink:

Hi

Thank for your guide
But there are not image attached. Can you please repost it ?

image

Thank