Apache als Reverse Proxy für Diaspora
Diaspora* die Software für verteilte soziale Netze wurde in einer Alpha Version veröffentlicht.
Bei Diaspora ist vorgesehen dass es keine zentrale Plattform gibt, sondern Benutzer Ihre eigenen Server - Pods genannt - betreiben. Da es aktuell auch auf dem offiziellen pod von joindiaspora.com keine Benutzer freigeschalten werden, ergibt es Sinn einen eigenen Server aufzusetzen.
Im Diaspora Wiki findet man dazu eine Anleitung. Allerdings beschreibt diese nicht, wie man in einer Produktivumgebung die Ruby Anwendung mit einem Webserver versieht, der die Anfragen auf Port 80 entgegennimmt (und statische Assets direkt ausliefert).
Ich habe dazu einen virtuellen Host mit Apache eingerichtet, die Konfiguration sieht so aus:
LoadModule proxy_module ... LoadModule proxy_http_module... <VirtualHost *> ServerAdmin webmaster@example.com DocumentRoot /var/www/example.com/pod/data/public ServerName pod.example.com ErrorLog /var/log/httpd/pod.example.com-error_log CustomLog /var/log/httpd/pod.example.com-access_log combined Alias /uploads/ "/var/www/example.com/pod/data/public/uploads/" Alias /images/ "/var/www/example.com/pod/data/public/images/" Alias /stylesheets/ "/var/www/example.com/pod/data/public/stylesheets/" Alias /javascripts/ "/var/www/example.com/pod/data/public/javascripts/" ProxyPass / http://pod.example.com:3000/ <Directory "/var/www/example.com/pod/data/public"> Options Indexes FollowSymLinks MultiViews IncludesNoExec ExecCGI AllowOverride All Order Allow,Deny Allow from All </Directory> </VirtualHost>D.h. Diaspora ist im Verzeichnis /var/www/example.com/pod/data installiert, und der Ruby Server "thin" ist erreichbar auf dem Port 3000. Falls es jemand testen will, mein Diaspora Seed ist damit unter bernd@pod.eckenfels.net erreichbar.