Bug 33049 - Breadcrumbs don't appear if you go directly to /cgi-bin/koha/erm/
Summary: Breadcrumbs don't appear if you go directly to /cgi-bin/koha/erm/
Status: NEW
Alias: None
Product: Koha
Classification: Unclassified
Component: ERM (show other bugs)
Version: Main
Hardware: All All
: P5 - low minor
Assignee: Jonathan Druart
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-23 01:12 UTC by David Cook
Modified: 2023-02-23 23:14 UTC (History)
4 users (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Documentation contact:
Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Cook 2023-02-23 01:12:29 UTC
I was just comparing the following links:

http://localhost:8081/cgi-bin/koha/erm/
http://localhost:8081/cgi-bin/koha/erm/erm.pl

They're actually virtually identical, except that the breadcrumbs list isn't populated in the former link.

The console also says the following:

vue-router.cjs:39 [Vue Router warn]: No match found for location with path "/cgi-bin/koha/erm/"

--

I'm actually a bit surprised that it works at all. 

In the plack.log, it shows that a GET for /intranet/erm/erm.pl

In the Apache logs, it shows a GET for /cgi-bin/koha/erm/

Ah, it's because of a RewriteRule in debian/templates/apache-shared-intranet.conf

That seems suboptimal...
Comment 1 Jonathan Druart 2023-02-23 07:39:58 UTC
/erm/ should return a 404.

> That seems suboptimal...

What that? Can you detail? What do you suggest?
Comment 2 David Cook 2023-02-23 23:14:14 UTC
(In reply to Jonathan Druart from comment #1)
> > That seems suboptimal...
> 
> What that? Can you detail? What do you suggest?

Maybe I'm wrong. I was thinking that overall we're trying to have fewer critical Koha things in Apache but maybe it doesn't matter. 

I was thinking it wouldn't be ideal to have to have a rewrite rule for every Vue.js module, but maybe that doesn't matter either.

I imagine the RewriteRule is there to handle bookmarks to URLs like: http://localhost:8081/cgi-bin/koha/erm/eholdings/local/titles

We could have http://localhost:8081/cgi-bin/koha/erm be the Perl script instead of http://localhost:8081/cgi-bin/koha/erm/erm.pl

Looking at https://metacpan.org/dist/Plack/source/lib/Plack/App/CGIBin.pm it looks like it detects Perl scripts using either a file extension of .pl or looking at the shebang. 

I just tried it out http://localhost:8081/cgi-bin/koha/erm and it works (except for the breadcrumbs of course).