RSS feed for websites missing it – RSS-Bridge

If like me you are a big user of RSS feeds (most probably you are using on of these RSS Readers?), especially my favourite one, the FreshRSS, you may be frustrated not to be able to follow Twitter accounts (Except if registered) or Youtube, and many more services not providing RSS feeds…

Well, Sebsauvage, the same guy that developed Zerobin (online pastebin) and Shaarli (Previous presented), have made a web service to convert populars non RSS friendly services to Atom/RSS/Json/Html and even plaintext page, called RSS-Bridge.

It currently supports the following services:

  • FlickrExplore : Latest interesting images from Flickr.
  • GoogleSearch : Most recent results from Google Search.
  • Twitter : Can return keyword/hashtag search or user timeline.
  • Identi.ca : Identica user timeline (Should be compatible with other Pump.io instances).
  • YouTube : YouTube user channel feed.
  • Cryptome : Returns the most recent documents from Cryptome.org.
  • DansTonChat: Most recent quotes from danstonchat.com
  • DuckDuckGo: Most recent results from DuckDuckGo.com
  • GuruMed: Most recent entries (full text) from gurumed.org
  • Instagram: Most recent photos from an instagram.com user.
  • OpenClassrooms: Lastest tutorials from fr.openclassrooms.com.
  • Pinterest: Most recent photos from user or search.
  • ScmbBridge: Newest stories from secouchermoinsbete.fr
  • WikipediaENLatest: highlighted articles from Wikipedia in English.
  • WikipediaFRLatest: highlighted articles from Wikipedia in French.
  • WikipediaEOLatest: highlighted articles from Wikipedia in Esperanto.
  • Bandcamp : Returns last release from bandcamp for a tag

Web-based and opensource, you can directly install it on your own server to generate RSS feeds based on those services.

RSS-Bridge

Installation

1) Download the latest archive in your /var/www

cd /var/www
wget https://github.com/sebsauvage/rss-bridge/archive/master.zip

2) Uncompress and remove master.zip file

unzip master.zip
mv rss-bridge-master/ rssbridge
rm master.zip

3) Download and copy PHP Simple HTML DOM Parser in vendor/simplehtmldom (required)

cd rssbridge
wget http://downloads.sourceforge.net/project/simplehtmldom/simple_html_dom.php
mkdir -p vendor/simplehtmldom
mv simple_html_dom.php vendor/simplehtmldom/

4) Change the owner of the rssbridge folder to www-data (apache user to avoid permissions issue)

chown -R www-data:www-data /var/www/rssbridge/

5) Simply access to http://YOURIP/rssbridge and get the feed you want!

 

Virtualhost configuration

As usual in most of my article, I share my configuration file for my Virtualhost.

If you want to access to your rssbridge service through rssb.domain.tld or a dedicated domain name, you can simply create a vhost.

You can also force HTTPS connection if you want (although there isn’t much confidential info there)

You will need to:

1) Create a A redirection in your DNS server/registrar from rssb.domain.tld to your IP

2) Have SSL certificate ready. If not you can read this tutorial. (Optional)

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called rssbridge (In root):

nano /etc/apache2/sites-enabled/rssbridge

and paste/adapt the following content:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName rssb.domain.tld
        Redirect / https://rssb.domain.tld

</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/myblog.pem
        SSLCertificateKeyFile /etc/ssl/private/myblog.key

        ServerAdmin webmaster@domain.tld
        ServerName rssb.domain.tld

        DocumentRoot /var/www/rssbridge
        <Directory />
                Options FollowSymLinks
                AllowOverride All
        </Directory>
        <Directory /var/www/rssbridge>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>
</IfModule>

Adapt the content (Servername, webmaster, SSL certificate and directory, …).

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

/etc/init.d/apache2 reload
Gravatar

Loves to discover web-based apps to install on his own server@home and write articles about it

0 Comments:

Add a comment