Help : Self-Hosting RSS Feed for my blog (pls)
from KazuchijouNo@lemy.lol to selfhosted@lemmy.world on 09 May 05:57
https://lemy.lol/post/44136070

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

#selfhosted

threaded - newest

abeorch@friendica.ginestes.es on 09 May 06:01 next collapse

@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.

rikudou@lemmings.world on 09 May 08:03 next collapse

Don’t ever install WordPress, just let it die. It’s slow, insecure and the owner is a dick.

abeorch@friendica.ginestes.es on 09 May 13:46 next collapse

@rikudou Its open source. The owner will die .. the software can live forever.

rikudou@lemmings.world on 10 May 08:07 collapse

It doesn’t become less insecure, though.

irmadlad@lemmy.world on 10 May 14:15 collapse

Don’t ever install WordPress, just let it die

I’ve never run wordpress, but it always fascinates me at the number of daily exploits that get released for WP. It seems to me that the core WP is solid, but it’s all the plugins that open up unintentional attack surfaces.

rikudou@lemmings.world on 10 May 21:51 next collapse

Can’t speak for nowadays, but long ago when I dabbled in WordPress myself, the code was pretty shitty and insecure.

catloaf@lemm.ee on 11 May 02:31 collapse

The core isn’t much better.

KazuchijouNo@lemy.lol on 10 May 21:04 collapse

I appreciate the advice, although it’d go against mu core principle of “doing it myself unless it’s unfeasible” besides, I don’t quite much like wordpress.

just_another_person@lemmy.world on 09 May 06:08 next collapse

Are you talking about just a straight HTML/CSS static blog, or is it created in a framework of some sort?

A_norny_mousse@feddit.org on 09 May 06:44 next collapse

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).

KazuchijouNo@lemy.lol on 10 May 21:05 collapse

Literally hand-written static html + css

486@lemmy.world on 09 May 06:20 next collapse

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 on 09 May 06:37 next collapse

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

KazuchijouNo@lemy.lol on 10 May 21:15 collapse

Can I do the UUID generation with the uuidgen command? Also, I’m learning python and bash, so perhaps I could do something with cron(? I guess what I need is some sort of template or examples so I can get started

The whole point is learning cool stuff :D

486@lemmy.world on 11 May 06:50 collapse

Yes, using uuidgen should work fine.

gsquirrel@lemmings.world on 09 May 06:25 next collapse

Creating an RSS feed by hand is no harder than creating HTML pages - it’s just an XML file, basically.

This page has some decent advice to get started with:

lmnt.me/blog/how-to-make-a-damn-website.html

486@lemmy.world on 09 May 06:45 next collapse

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 on 09 May 06:56 next collapse

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 on 09 May 07:28 collapse

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 on 09 May 08:37 collapse

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 on 09 May 07:14 collapse

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.

KazuchijouNo@lemy.lol on 10 May 21:17 collapse

Thanks a bunch! I’ll check it out!

Strit@lemmy.linuxuserspace.show on 09 May 07:26 next collapse

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.

KazuchijouNo@lemy.lol on 10 May 21:23 collapse

I am my blog software.

I’m pretty much doing everything by hand with vim and nginx :D

rikudou@lemmings.world on 09 May 08:04 next collapse

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.

Xanza@lemm.ee on 09 May 09:22 next collapse

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.

KazuchijouNo@lemy.lol on 10 May 21:31 collapse

Thanks! This is really helpful, I’ll use this rss xml template.

tauren@lemm.ee on 10 May 08:28 next collapse

What powers your blog? If it’s some platform like WordPress, then an RSS feed might be built-in or added with a plugin. Otherwise, you’d have to create and maintain it manually.

www.w3schools.com/XML/xml_rss.asp

bladewdr@infosec.pub on 10 May 18:23 collapse

If you’re using Hugo it also creates an RSS feed by default every time you build the site.

TORFdot0@lemmy.world on 10 May 19:54 collapse

I’d agree with others that have said to use a framework like Hugo to serve an RSS feed. I wrote an automation using Google apps script to scrape blog pages and manually update the RSS feed but it was more trouble than it was worth. Letting your framework automatically update your feed is much easier.