Apache als Proxy für Diaspora in Plesk vhost Umgebung

Da es offensichtlich einige Leute gibt die eine ähnliche Situation haben löse ich die Proxy erklärung von der langen Installationserklärung.

In meiner Konfiguration betreibe ich den Diaspora* thin Server mit einem Apache-Server der meine anderen Seiten versorgt.

Um den thin Server auch auf Port 80 erreichbar zu machen benutze ich den Apache als Proxy

Betreibt ihr eure Homepages auf einem Plesk System müsst ihr im conf Verzeichnis (z.B. /var/www/vhosts/domainname/conf/) die Datei vhost.conf erstellen

ProxyPass / http://url.eures.pods:port/
<Location />
ProxyPassReverse /
</Location>

Nun müsst ihr die Konfiguration erneut einlesen und den Apache restarten

/usr/local/psa/admin/sbin/websrvmng -a

/etc/init.d/httpd restart

Diaspora auf CentOS/Plesk VirtualServer installieren

Nachdem ich mich eine Weile durchs Netz gewühlt habe, habe ich es nun endlich geschafft den Diaspora Server zum laufen zu bekommen.

Für andere Leidensgenossen werde ich den Weg den ich genommen habe noch mal auflisten

Die Anleitung hier (http://www.robmcghee.com/web/installing-diaspora-on-a-centos-vps/) hat dabei sehr gut geholfen.

Nachdem ihr euch per SSH auf eurem Server eingeloggt habt installieren wir erstmal die Basics

yum install libxslt libxslt-devel libxml2 libxml2-devel

Wir installieren Ruby 1.8.7 Das müssen wir selber kompilieren da es im Moment dafür noch kein Packge für CentOS gibt

wget http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7.tar.gz
tar -zxvf ruby-1.8.7.tar.gz
cd ruby-1.8.7
./configure –with-openssl-dir=/usr/lib64/openssl
make
sudo make install

Wir installieren die RubyGems

wget http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz
tar -zxvf rubygems-1.3.6.tgz
cd rubygems-1.3.6
sudo ruby setup.rb

MongoDB muss installiert werden. Solltet ihr noch kein Repository dafür haben fügt es wie folgt hinzu.

touch /etc/yum.repos.d/10gen.repo
vi /etc/yum.repos.d/10gen.repo

Fügt folgendes in die Datei ein

[10gen]

name=10gen Repository

baseurl=http://downloads.mongodb.org/distros/fedora/13/os/x86_64/
gpgcheck=0
enabled=1

Nun können wir MongoDB installieren

yum install mongo-stable mongo-stable-server

Wir installieren ImageMagick

yum install ImageMagick

Git installieren

yum install git

Das RubyGem Bundler installieren. Wird zum Betrieb von Diaspora benötigt

gem install bundler

Loggt euch in Euer Plesk Panel ein und erstellt eine Domain/Subdomain auf der ihr Diaspora laufen lassen wollt.

Wechselt im SSH-Terminal in das entsprechende Verzeichnis. In meinem Beispiel wird Diaspora über eine Subdomain betrieben. Euere Verzeichnisstruktur könnte auch abweichend sein

cd /var/www/vhosts/<domain-name>/subdomains/<subdomain>/http

Wir klonen das aktuelle Diaspora GIT

git clone http://github.com/diaspora/diaspora.git

Wechsel in das Diaspora Root Verzeichnis

cd diaspora

Nun führen wir die bundle Installation aus um alle Abhängikeiten aufzulösem

bundle install

Kopiert und editiert die Konfigurationsvorlage config/app_config.yml.example

cp config/app_config.yml.example ./config/app_config.yml

vi config/app_config.yml

Passt die Einträge dort entsprechend eurer Installation an

Um den Server zu starten könnt ihr das Script

./script/server

ausführen. Mit der Option -d dahinter wird es als Dienst gestartet. Der Script startet alle notwendigen Dienste die ihr so braucht.

Standarmäßig läuft der Diaspora-Server auf Port 3000. Sollte der Port bei euch nicht vefügbar sein, kann er in der Datei ./config/server.sh angepasst werden. Ändert einfach den Wert der bei THIN_PORT steht.

Nun müssen wir dem Webserver dazu bringen das er die Anfragen die Standardmäßig über Port 80 an die Subdomain gestellt werden auch an den Diaspora-Port weiterleitet. Hierzu erstellen wir eine vhost.conf im conf/ verzeichnis eurer Subdomain

vi /var/www/vhosts/<domain-name>/subdomains/<subdomain>/conf/vhosts.conf

Fügt folgenden Inhalt hinzu

ProxyPass / http://subdomain.domain.com:port/
<Location />
ProxyPassReverse /
</Location>

Nun müssen wir noch Plesk dazu bringen die neue Konfiguration zu laden

/usr/local/psa/admin/sbin/websrvmng -a

/etc/init.d/httpd restart

Der Apache sollte jetzt die Anfragen weiterleiten

Geht nun auf http://subdomain.domain.com und ihr solltet den Begrüßungsbildschirm sehen können.

Wenn ihr möchtet, dass sich User frei registrieren können, dann müsst ihr in der ./config/app_config.yml das flag registration_closed auf false setzen

Ich hoffe damit konnte ich euch soweit erstmal weiterhelfen