-- Leo's gemini proxy

-- Connecting to cadence.moe:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini; encoding=utf-8; lang=en

↩ Home

⬆ Gemlog


Future of Bibliogram


> 868 words, 21 paragraphs, about 3 minutes to read (300 wpm).

> First published on 2020-12-17.

> This article has been loaded 31485 times.


Don't know what Bibliogram is?

Visit the Bibliogram website.


The problem


Instagram has started applying extremely restrictive limits to requests from IPs that are detected as cloud servers.


A couple of requests will go through at first, but after a moment, all requests will be blocked, with a very long timer until they are unblocked again. After this timer, you get a couple more requests, and the cycle repeats.


Since websites must be hosted in the cloud, Bibliogram as a public service is extremely difficult if the cloud provider is on Instagram's block list. All the cloud providers I've tried are on that list.


If you can find a cloud provider that does work, please let me know, since this is all that is needed to make public Bibliogram possible again.


> So far I've received these responses. Note that this is definitely not endorsements of these services. This is an unordered list that you can subject to your own scrutiny.

>

> * "Iperweb" (suggested by Joshua)

> * "Netcup" https://netcup.de (suggested by Benthor)

> * "Uberspace" https://uberspace.de/en/ (suggested by Paul)

> * "ServaRICA" https://servarica.com/ (suggested by a9)

> * Some types of servers on Scaleway (suggested by Lomanic)

> * "Linode" Newark NJ region, possibly other regions (suggested by Sasha)

> * "Ionos" (suggested by ellie)

> * "Mythic Beasts" https://www.mythic-beasts.com/ (suggested by Tim Clifford)

> * "vpsFree" https://vpsfree.org (node20.prg region known working) (suggested by lunik1)

> * (contact me to suggest another?)


Here's how to test a cloud provider yourself:


> Run exactly this command:

>

> $ curl 'https://www.instagram.com/nasa/feed/' -H 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0'

>

> You should get a response. If you get no response, then Instagram is blocking that server. However, as already mentioned, the first couple of requests will always return a valid response, even on blocked servers. It is vital to test several times over several minutes.

>

> Run that command every minute or so for several minutes. If you ever get a single empty response, then the server is on Instagram's block list, and is not a candidate for a public Bibliogram instance. (It is very, very, very likely that all other servers from that provider in that region are also blocked.)

>

> On the other hand, if you consistently get a real response every single time, then it's likely that region from that provider is not blocked by Instagram. Please let me know which provider and region that is.

My contact details are here.


Possible solutions


Using a proxy or VPN


Perhaps the servers could make all requests via a proxy, but this is something that would be better handled on the operating system layer rather than by Bibliogram. Instagram also may detect proxy IPs as being proxies, and block requests from those as well. Shared proxies are very likely to be overloaded from other people making requests to Instagram via the same IP.


Using Tor


The servers could make all requests via Tor, and this is actually what they do with the current default configuration from upstream. However, there are multiple downsides.


Tor is not quick.

Tor cannot be used for graphql requests.


The second point is a big deal. It means that timeline continuation pages cannot be loaded over Tor, nor can individual posts. The only thing that can be loaded is a user's profile and the first 12 images of their timeline. This is a pretty bad thing.


Despite these downsides, it does actually _work_ for blocked servers, unlike every other option. So that's what I've done. Using Tor is the new default configuration upstream, and it'll be applied to any instance that's up to date and wants to use it.


The future


So there you go. The future for public Bibliogram instances is, unfortunately, bleak. Most cloud providers will not work. Most instance administrators will not wish to hassle to find a configuration or a cloud provider that fully works.


For users, this means that the only realistic way to access Bibliogram is by running it on their own computers or internally on their home networks.


This is easy to do, especially for Linux users, and is fully documented. However, it does add an inconvenience for users that just want to browse Instagram, and especially for those who are on a mobile device since Bibliogram cannot run there.


To make things as easy as possible, I have added a question to the first run Bibliogram installs that asks people whether they'd like to use Tor.


(Side note, if anyone can get Bibliogram working on a phone and accessible in its browser, I want to hear from you!!!! I don't think it's possible though.)


What a sad way to end this post, but there's nothing else I can do.


If you have any information about cloud servers, proxies, or bypass methods that could make public Bibliogram instances viable, please let me know. If I am informed of a solution that works consistently, then I'll post an update for other Bibliogram administrators to see.


Subscribe to the announcements mailing list.


Until then.




---


> No replies yet.


Thoughts on this? I'd love to hear them! Write a reply.


---


Looking for more?


[NEWER →] 2021-01-07 - How I do my backups

[OLDER ←] 2020-12-15 - Aggregating feeds on Gemini

[RANDOM ] 2020-12-15 - Aggregating feeds on Gemini


Or, back to the gemlog index.

-- Response ended

-- Page fetched on Thu Mar 28 14:37:00 2024