-
Notifications
You must be signed in to change notification settings - Fork 511
Description
Is your feature request related to a problem? Please describe.
If your repository is hosting content that is also hosted elsewhere, it's possible that it won't be indexed in search engines in favor of other places on the web where the resource lives.
One way to get around this, is for DSpace to declare its item pages or bitstreams as canonical, e.g. highlighting that they are the (best) source of record.
Right now, to my knowledge, DSpace is not using the canonical link.
As a tangent on this issue, DSpace is shooting itself semi in the foot here, by exposing different links to the same think /content links vs /download links for example. So within one instance of DSpace, it's also useful if DSpace would declare ONE of its links as canonical
Configurability
It make sense to include 2 config switches, to turn canonical off for bitstreams or items
## Defaults to true - uncomment to disable
# canonical.bitstreams = false
# canonical.items = false
One of the usecases where you deliberately want to turn this off, is if your repository serves as an archive for live content where the actual canonical versions live elsewhere. Let's say you have OJS for a journal, and you deliberately want to keep the traffic to the content to OJS and NOT to DSpace. In that case it's better of OJS would have the canonical links, and DSpace would NOT declare it.
Describe the solution you'd like
For the item pages, the canonical tag needs to be included in the HTML head
<link rel="canonical" β¦>
For bitstream downloads, canonical should be expressed as a LINK http header
Link: <https://example.com/preferred-url>; rel="canonical"
When developing this, probably we need to take extra care & checking that we both get this for Angular and SSR. I would even say ESPECIALLY for SSR as these tags are primarily for bots and not for users!!!
Describe alternatives or workarounds you've considered
None come to mind
Additional information
Metadata
Metadata
Assignees
Labels
Type
Projects
Status