discourse/app/views
Sam de9a031073
FEATURE: use canonical links in posts.rss feed (#16190)
* FEATURE: use canonical links in posts.rss feed

Previously we used non canonical links in posts.rss

These links get crawled frequently by crawlers when discovering new
content forcing crawlers to hop to non canonical pages just to end up
visiting canonical pages

This uses up expensive crawl time and adds load on Discourse sites

Old links were of the form:

`https://DOMAIN/t/SLUG/43/21`

New links are of the form

`https://DOMAIN/t/SLUG/43?page=2#post_21`

This also adds a post_id identified element to crawler view that was
missing.

Note, to avoid very expensive N+1 queries required to figure out the
page a post is on during rss generation, we cache that information.

There is a smart "cache breaker" which ensures worst case scenario is
a "page drift" - meaning we would publicize a post is on page 11 when
it is actually on page 10 due to post deletions. Cache holds for up to
12 hours.

Change only impacts public post RSS feeds (`/posts.rss`)
2022-03-15 20:17:06 +11:00
..
about FIX: Support Ruby 3 keyword arguments 2021-10-05 11:25:00 -04:00
admin/backups
application FIX: Offer site_logo_dark_url as an option for dark mode themes (#14361) 2021-09-16 17:47:51 -04:00
badges FIX: in case of orphan user records skip badge 2019-08-30 17:21:34 +10:00
categories FIX: Resolve Schema.org validation issues 2020-05-05 16:57:16 +03:00
common Code review comments. 2021-06-21 11:06:58 +08:00
default
email FIX: Show Uncategorized when unsubscribing (#13832) 2021-07-26 12:19:30 +10:00
embed FIX: Ensure embedded replies/reply-to links open in _blank (#14597) 2021-10-13 21:34:30 +01:00
exceptions FIX: Hide empty popular/recent sections in 404 page (#10811) 2020-10-02 15:11:15 -04:00
finish_installation Upgrade to FontAwesome 5 (take two) (#6673) 2018-11-26 16:49:57 -05:00
groups FEATURE: add title tag for group detail page (#13702) 2021-07-12 20:05:57 +05:30
invites UX: updated "accept invite" error page (#15490) 2022-01-09 10:21:42 +05:30
layouts PERF: Update ember-auto-import and webpack (#15919) 2022-02-14 11:21:39 +00:00
list FEATURE: add nofollow to RSS alternate link in topics and categories (#16013) 2022-03-09 16:34:02 +11:00
metadata DEV: Add support for Rails 6 2019-05-02 16:23:25 +10:00
offline UX: Remove Helvetica from our font stack (#11876) 2021-02-05 17:01:21 -05:00
posts FEATURE: use canonical links in posts.rss feed (#16190) 2022-03-15 20:17:06 +11:00
published_pages FIX: use normal logo in published pages if small not available. 2020-09-21 09:20:39 +05:30
qunit PERF: Update ember-auto-import and webpack (#15919) 2022-02-14 11:21:39 +00:00
robots_txt FEATURE: Replace Crawl-delay directive with proper rate limiting (#15131) 2021-11-30 12:55:25 +03:00
safe_mode Upgrade to FontAwesome 5 (take two) (#6673) 2018-11-26 16:49:57 -05:00
search
session FEATURE: Rename 'Discourse SSO' to DiscourseConnect (#11978) 2021-02-08 10:04:33 +00:00
static FEATURE: Allow to modify topic-backed static pages (#15324) 2021-12-16 04:24:11 +01:00
tags FIX: Use new tag routes (#8683) 2020-01-21 19:23:08 +02:00
topics FEATURE: use canonical links in posts.rss feed (#16190) 2022-03-15 20:17:06 +11:00
user_api_keys FEATURE: Delegated authentication via user api keys (#7272) 2019-04-01 13:18:53 -04:00
user_notifications Add min-width rule to fix header display issues on the Android Gmail app (#13827) 2021-07-23 14:21:03 -07:00
users PERF: Update ember-auto-import and webpack (#15919) 2022-02-14 11:21:39 +00:00
users_email DEV: Hash tokens stored from email_tokens (#14493) 2021-11-25 09:34:39 +02:00
wizard Code review comments. 2021-06-21 11:06:58 +08:00