Oh technomages of c/selfhosted, I come seeking your help once more because anywhere I look there’s people trying to sell me on their service, something-something PODCASTS, or RSS for windows and all that, my brain cannot anymore.

I’ve got a blog I’m serving with nginx, and I would like to implement some sort of RSS feed. I’m pretty much new to the whole thing, but it was recommended to me. I did a bit of research and now I know those are like xml files that you subscribe to.

So, I wanted to know: In your experience, what is the best way to go about this? Do I have to make them myself by hand and put them in an /rss/ directory in the root of my blog? How do people subscribe to them? Got any resources?

I wouldn’t mind writing them by hand actually, my whole website is hand-made, gluten free and organic. (maybe not the last one).

Thanks in advance <3

  • Xanza@lemm.ee
    link
    fedilink
    English
    arrow-up
    3
    ·
    8 hours ago

    In your experience, what is the best way to go about this?

    RSS feeds are static files with formatted XML list items. When a feed is updated to include a new XML list item, the reader application notifies users who are subscribed that there’s been a change. There are actually no moving parts to RSS feeds, which is what makes them so popular. RSS feed applications simply loads an XML feed and counts the number of XML objects. When the application checks again, if there are new objects, then the feed has been updated and you get your little notification.

    That’s it. It’s a static file (like HTML), and it works like magic. You don’t need any software or libraries to create an RSS feed over and above being able to serve static XML.

    So unless you’re updating your feed several times per day, I would just do it by hand. Maybe write a little helper script to scratch out the formatted XML based on input.

    Do I have to make them myself by hand and put them in an /rss/ directory in the root of my blog?

    You can, but it’s really not necessary. If you check around github you can find a ton of projects that help you create RSS feeds.

    • 486@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      11 hours ago

      This is not quite true. As I mentioned in my other comment already, each feed entry needs its own unique UUID. You have to generate such a UUID for every entry.

      • exu@feditown.com
        link
        fedilink
        English
        arrow-up
        8
        ·
        11 hours ago

        Per the RSS specification the guid field is optional.

        And if you do want to provide it, any string works. So just count up from 1, use the title, current date or whatever for that field.

        • 486@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          10 hours ago

          Thanks for pointing this out. I thought this had to be an actual UUID. Generating a unique string of arbitrary format manually is certainly much easier to do manually without additional tools.

          • arjache@fedia.io
            link
            fedilink
            arrow-up
            2
            ·
            9 hours ago

            it can also just be the permalink for the post, which each post ought to have anyway. in RSS you can set isPermaLink=“true” on the guid to indicate it’s a permalink.

      • akademy@lemm.ee
        link
        fedilink
        English
        arrow-up
        2
        ·
        10 hours ago

        It’s pretty easy to create a uuid. There are many ways to do it. Which is best for you would depend on how you’re generating your website.

  • Rikudou_Sage@lemmings.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    10 hours ago

    Depends on what you use for the blog. Most blogging software does have RSS support. If you’re writing the blog by hand, you need to create the RSS manually, or if there’s some kind of source for the blog posts, generate it from the source data.

    • A_norny_mousse@feddit.org
      link
      fedilink
      English
      arrow-up
      3
      ·
      11 hours ago

      This is the important question. On my blog software It’s just one short page written in the blog’s templating language, very easy to create from scratch.

      If the blog is a collection of plain HTML pages, you’ll somehow need to collect the pertinent info first (e.g. the ten newest pages, their titles, a short summary).

  • Strit@lemmy.linuxuserspace.show
    link
    fedilink
    English
    arrow-up
    2
    ·
    10 hours ago

    Don’t most blog software provide rss feeds?

    I know Ghost does, by just adding /rss to the link in question. So you can link to the whole blog, specific tags or even specific posts this way.

  • 486@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    11 hours ago

    How do people subscribe to them?

    Subscribing to an RSS feed really is nothing more than telling your RSS client about the URL to that RSS XML file. The RSS client then regularily checks the URL for changes.

    If your site is hand-made as you say, you would have to manually create and update the RSS file also. This is quite a nuisance, not only because it is XML, but also because every feed entry needs its own unique UUID, which you need to create. Perhaps you could create a script that does it for you. Static site generators are usually able to automatically create an RSS feed for you.

    • prof@infosec.pub
      link
      fedilink
      English
      arrow-up
      3
      ·
      11 hours ago

      I use Hugo for static site generation and it makes the RSS stuff for me.

  • abeorch@friendica.ginestes.es
    link
    fedilink
    arrow-up
    2
    arrow-down
    3
    ·
    12 hours ago

    @KazuchijouNo Just install something like WordPress which generates RSS of posts automatically. Bonus you can add the Activitypub plug in and syndicate your content with Mastodon etc.