mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

12K
active users

#itnotes

2 posts2 participants0 posts today

I've just launched the version of my blog with a BSD-based theme. The main colors are inspired by the BSDs, and badges will appear if a post includes one (or more) BSD in its categories. I've applied a few fixes (there are more to come), but it's already fully usable.
The site is designed to be navigable even without images or JavaScript, and can be used with text-based browsers. The only feature that requires JavaScript is the search function, which runs locally in the user's browser for maximum security and privacy.

For those who have already visited the site in recent days, you might not see the new theme correctly as some CSS parts could still be cached in your browser. I’ve set long expiration times for the CSS, so browsers may not notice the changes right away.

it-notes.dragas.net

IT NotesIT NotesScattered IT Notes - by Stefano Marinelli
Updated Version of the apache http caching setup for snac, including proxy media

I already wrote about caching here.
Now I extended what I cache a bit.
This was because after enabling the option to proxy media, I've seen access to the file paths /x/ and /y/ in addition to the path were snac stores the media that I include in my own posts ( /s/ ).
There are two locations to proxy media, depending if you requests the media via the mastodon api or via the web. (/x/ and /y/), oh and I added the nodeinfo2.0 path too, because I've noticed it was queried all the time by a lot of instances and it gives me pleasure to see something cached handed out in the access logs. 🙂 (I guess it is actually irrelevant for the system resources)
This is the updated setup:
Enable the relevant modules:

a2enmod expires cache cache_disk

Be sure "htcacheclean" is running to clean up the old disk cache. (under debian see /etc/default/apache-htcacheclean or else the relevant systemd service or whatever)
Then add this to the httpd Virtualhost config:

<LocationMatch "^/social/[^/]+/[xys]/|^/social/nodeinfo_2_0">
CacheEnable disk
Header set Cache-Control "max-age=86400, public" "expr=%{REQUEST_STATUS} == 200"
ExpiresActive On
ExpiresDefault "access plus 86400 seconds"
</LocationMatch>
This will use the disk cache to cache everything under the $username/s/, /x/ and /y/ paths, as well as for the /nodeinfo_2_0 path, utilizing mod_expires to generate the appropriate cache headers (for lazy ones like me). In this case caching it for 1 day.
Further reading and all options are explained under https://httpd.apache.org/docs/2.4/caching.html (and ff)

The Header that I set here, on the condition of Status code 200, is needed for the path /y/, because snac set no-cache on that location and mod_expires will honor that if we don't override it. I set it to the same Cache-Control value as mod_expires would. (I use mod_expires because it will additionally calculate the date and put that in the expires header. (hence the name I guess 😀 )

#Fediverse #Hosting #ITNotes #apache2 #httpd #Ownyourdata #Server #Snac #Snac2 #Tipsandtricks #Tutorial #Debian #caching
:xmpp:
snikket.deMenel (@menel@snikket.de)After seeing **Improving snac Performance with Nginx Proxy Cache** from @itnotes@snac.it-notes.dragas.net via --- https://snac.it-notes.dragas.net/itnotes/p/1738139676.258050 https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/ --- I decided to prematurely optimize and adjust this for my apache2 httpd server in debian where I run snac. I've never done any caching etc before so it was a nice adventure to learn something new. The documentation helped and in the end it wasn't
Replied to IT Notes
@itnotes@snac.it-notes.dragas.net

Interesting you writing about this, I actually did this too, after adding the /s/ path, I modified my rule to:
^/[^/] /[xs]/
For posted Media too, but I've seen snac adds the "no-cache" ,and related header content, and my caching for /x/ was ignored. Then I wondered if there is security problematic content stored, for snac using these headers.

#Data #Fediverse #Hosting #ITNotes #Networking #Nginx #NoteHUB #Ownyourdata #Server #Snac #Snac2 #Social #Tipsandtricks #Tutorial
After seeing
Improving snac Performance with Nginx Proxy Cache from @itnotes@snac.it-notes.dragas.net via
https://snac.it-notes.dragas.net/itnotes/p/1738139676.258050
https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/
I decided to prematurely optimize and adjust this for my apache2 httpd server in debian where I run snac.

I've never done any caching etc before so it was a nice adventure to learn something new. The documentation helped and in the end it wasn't very hard. I learned a bit about some http headers and regex on the way too.

Basically it works like this:
Enable the relevant modules:

a2enmod expires cache cache_disk
Be sure "htcacheclean" is running to clean up old disk cache. (under debian see /etc/default/apache-htcacheclean or else the relevant systemd service)
Then add to the snac virtualhost config:

CacheRoot /var/cache/apache2/mod_cache_disk
CacheQuickHandler off
CacheLock on
# Optional while testing stuff;
CacheDetailHeader on

# My Instance ist not at the root, but under "/social"; so this needs to be adapted for most I guess:
<LocationMatch "^/social/[^/]+/s">
CacheEnable disk
ExpiresActive On
ExpiresDefault "access plus 30 days"
</LocationMatch>
This will use the disk cache to cache everything under the /s/ Path, same as the original ngnix tutorial, Utilizing the mod_expires to generate the appropriate cache headers (for lazy ones like me), In this case caching it for 30 days.
Further reading and all options explained under https://httpd.apache.org/docs/2.4/caching.html ff

Thanks for the initial tutorial @itnotes@snac.it-notes.dragas.net

#Fediverse #Hosting #ITNotes #Networking #apache2 #httpd #Ownyourdata #Server #Snac #Snac2 #Social #Tipsandtricks #Tutorial #Web #Debian
snac.it-notes.dragas.netIT Notes (@itnotes@snac.it-notes.dragas.net)2 following, 85 followers · **Improving snac Performance with Nginx Proxy Cache** https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/ #Data #Fediverse #Freebsd #Hosting #ITNotes #Networking #Nginx #NoteHUB #Ownyourdata #Server #Snac #Snac2 #Social #Tipsandtricks #Tutorial #Web