documentation
documentation copied to clipboard
[New instance] https://y.hc.ws/
URL
https://y.hc.ws/
Mandatory checks
- [X] Instance has a domain name
- [X] Instance is served over HTTPS
- [X] Statistics (
/api/v1/stats) are enabled - [X] Instance is properly configured (including the mandatory post install configuration)
- [X] Instance has an automatic hourly restart setup of Invidious
- [X] If dash, proxy + download is enabled (default settings), the instance has unlimited traffic/bandwidth or close to unlimited (100TB minimum)
- [X] Instance is not running any kind of analytics
Maintainer chart
- [X] Ensure that my instance is up to date (less than one month old)
- [X] Ensure a proper uptime of my instance (around 90%)
Host country
Luxembourg / USA
Man in the Middle
No response
Source code URL
https://codeberg.org/hc-ws/invidious
Additional information
Server info:
- Hosted on the latest version of FreeBSD.
- Using the latest version of Invidous.
- Uses nginx and forwards to either 3 upstream instances of Invidious.
- They 3 Invidious instances are restarted every hour with a offset to each other so atleast 1 will always be running.
Source code changes:
- Updated the Makefile to support bmake, FreeBSD uses bmake instead of gmake so I had to modify it to allow for compilation on the server.
- Show the upstream server id and the current host ID within the footer.
- Made the player js files minimized by default and set a few of the JavaScript files to load async to improve loading times.
- Update how the maxres images load to make them significantly faster.
Hello! Your instance has been added to our monitoring system: https://updown.io/r4mq You need to wait 30 days before we add your instance, this is to evaluate that your instance will keep a good uptime for one month.
Make sure you double checked all the mandatory checks or this will slow down the process of adding your instance!
Please consult these two important tutorials:
-
Escaping the YouTube block (403 errors in playback): https://docs.invidious.io/ipv6-rotator/
-
Improving the performance and the stability of your public instance: https://docs.invidious.io/improve-public-instance/
It is highly recommended to follow these tutorials because it will allow the instance to stay stable and performant over the long term.
Please consider joining the Matrix room for public instance maintainers by joining our Matrix room: https://matrix.to/#/#invidious:matrix.org then pinging @ unixfox, @ TheFrenchGhosty and @ SamantazFox for asking to be invited to the Matrix room. We discuss troubles managing a public instance, sharing some advices and more.
@GlowingUmbreon Thanks for submitting your instance. However, your network architecture may be causing a couple of issues with your instance currently:
-
Thumbnail links in channel RSS feeds are pointing to
y.hardcopy.ws:3000rather than your main domainy.hc.ws(see example). This will prevent thumbnails from loading properly for users. -
User preferences do not appear to be saving correctly. When changing a setting and clicking save, the preferences should persist but currently do not.
-
Although you've set
max-age=31536000; includeSubDomains; preloadfor your HSTS header, your instance is not being preloaded. This is because the HSTS header needs to be set on the root domainhc.wsas well.
Also, if you haven't already, be sure to implement IPv6 rotation on your upstream Invidious instances as per the documentation.
Hi @perennialtech Thank you for the information, 1/2. It appears that invidious was still setup with the old y.hardcopy.ws domain. This has now been updated and testing the cases you provided me this appears to be working now. 3. I have switched from using Invidious's built in HSTS headers to instead using Nginx HSTS headers, this is now also set on the root hc.ws. I believe this should be working as expected now.
For IPv6 rotation I had been unable to use the smart IP rotator as suggested in the documentation, I believe the iproute python library does not support setting routes on FreeBSD. I however have made a similar utility which I should hopefully be able to get running on the server soon.
Thank you again for alerting me to these mistakes.
Had around ~1.5 hours of downtime last night. I ran make as sudo instead of as invidious which broke some permissions. Testing the website after running make worked fine for a period of time, it was only after all the upstreams went through their automatic restart that the instance went down. This is now fixed though.
@GlowingUmbreon Thanks for the update and for addressing the issues with the instance. A few additional notes:
- I have switched from using Invidious's built in HSTS headers to instead using Nginx HSTS headers, this is now also set on the root hc.ws. I believe this should be working as expected now.
As a heads up, hstspreload.org is still showing an issue with the root domain hc.ws being inaccessible over plain HTTP. For example, trying to curl http://hc.ws/ returns a connection refused error:
$ curl -v http://hc.ws/
* Failed to connect to hc.ws port 80 after 510 ms: Couldn't connect to server
* Closing connection
curl: (7) Failed to connect to hc.ws port 80 after 510 ms: Couldn't connect to server
Seems like your server isn't accepting any HTTP traffic on port 80, rather than redirecting to HTTPS. It would be best to get this resolved so that people accessing the site over plain HTTP will be automatically redirected to HTTPS.
For IPv6 rotation I had been unable to use the smart IP rotator as suggested in the documentation, I believe the iproute python library does not support setting routes on FreeBSD. I however have made a similar utility which I should hopefully be able to get running on the server soon.
Regarding IPv6 rotation, the maintainer of invidious.incogniweb.net has apparently had success using RFC 8981 Temporary Address Extensions and the net.ipv6.conf.eth0.use_tempaddr=2 sysctl as a workaround. If your utility leverages the same principle, everything should be fine though.
Had around ~1.5 hours of downtime last night
No worries about the brief downtime. As long as you can maintain >90% uptime overall, your instance will remain listed.
Oh thank you, I was aware there was the temporary address extension but I was unable to find a way to enable it within FreeBSD. I will get this activated later on today.
I was aware that the server is not listening on port 80 but I did not believe that to be a problem as modern browsers should be able to redirect but I will update the nginx config to account for this.
Apologies for the delay, I was unable to use temporary address extension within freeBSD as it required DHCPv6 to function which my provider does not support. I have finished making a script that rotates the ipv6 for freeBSD, I would like for adding this server to the official list on hold for a week just to make sure that the script does not encounter any errors. Once this is done I believe everything should be good to go.
Okay it looks like the IP has rotated successfully each time and I have not noticed any other problems so I am happy for this to go ahead now.
Since https://github.com/iv-org/invidious/issues/4759, I would recommend to at least offer DASH. Otherwise people will be stuck in 480p only.
Proxying/DASH has been added, is there anything else that you believe would be beneficial to change?
@GlowingUmbreon We've recently released a new workaround for the Youtube block. Please ensure you have applied it as currently your instance dosen't work, and we can't add it otherwise.
Closing as instance is not functioning (due to the recent issues).