re:oyd (8): OwnCloud@Pogoplug V2

Unser Server läuft soweit, also geht es jetzt daran, OwnCloud zu installieren.

  1. Dafür wechseln wir zunächst in unser Webserververzeichnis
    cd /srv/http
  2. Dann laden wir die neueste OwnCloud Version herunter
    wget http://owncloud.org/releases/owncloud-4.5.5.tar.bz2
  3. die wir anschließend entpacken
    tar -xjf owncloud-4.5.5.tar.bz2
  4. und zu guter letzt noch den Besitzer der Dateien anpassen
    chown -R http:http /srv/http/owncloud/

Unser OwnCloud-Server sollte dann am Ende unter https://royd.dnsd.me/owncloud/ erreichbar sein. Damit OwnCloud läuft, müssen wir aber noch unseren Webserver und unsere php-Installation anpassen. Beginnen wir mit den Änderungen an der
nginx-Konfigurationsdatei (/etc/nginx/nginx.conf) (ACHTUNG, nur ausschnittsweise Darstellung der Datei):

server {
       listen       443;
       client_max_body_size 1000M; # UPLOAD-DATEIGRÖSSE
       #...
       location / {
            server_name   royd.dnsd.me; #ACHTUNG server_name IN DER GESAMTEN DATEI ANPASSEN!
            root   /srv/http;
            index index.php index.html index.htm;

            rewrite ^/cloud/.well-known/host-meta /public.php?service=host-meta last;
            rewrite ^/cloud/.well-known/carddav /remote.php/carddav/ redirect;
            rewrite ^/cloud/.well-known/caldav /remote.php/caldav/ redirect;
            rewrite ^/cloud/apps/calendar/caldav.php /remote.php/caldav/ last;
            rewrite ^/cloud/apps/contacts/carddav.php /remote.php/carddav/ last;
            rewrite ^/cloud/apps/([^/]*)/(.*.(css|php))$ /index.php?app=$1&getfile=$2 last;
            rewrite ^/cloud/remote/(.*) /remote.php/ last;
            #error_page 403 /cloud/core/templates/403.php;
            #error_page 404 /cloud/core/templates/404.php;

            try_files $uri $uri/ @webdav;
            }

            # Direkten Zugriff auf Daten unterbinden
            location ~ /(data|config|.ht|db_structure.xml|README) {
                        deny all;
            }

    location @webdav {
                    fastcgi_split_path_info ^(.+.php)(/.*)$;
                    unix:/var/run/php-fpm/php-fpm.sock;
                    fastcgi_param SCRIPT_FILENAME /srv/http$fastcgi_script_name;
                    fastcgi_param HTTPS on;
                    fastcgi_param HTTP_AUTHORIZATION $http_authorization;
                    fastcgi_param htaccessWorking true;
                    include fastcgi_params;
     }
}

Als nächstes müssen wir noch in der php-Konfigurationsdatei (/etc/php/php.ini) einige Zeilen auskommentieren. Das Rautezeichen # muss vor den folgenden Zeilen gelöscht werden:

xmlrpc.so
zip.so
gd.so
pdo_sqlite.so
sqlite3.so
extension=iconv.so
extension=openssl.so

Zu guter Letzt starten wie noch nginx und php-fpm neu

systemctl restart nginx
systemctl restart php-fpm

Jetzt sollte sich OwnCloud über https://royd.dnsd.me/owncloud/ einrichten lassen. Und natürlich muss noch der entsprechende Mac-Client heruntergeladen und eingerichtet werden. Wer für sein abzugleichendes OwnCloud-Verzeichnis auf dem Mac noch ein passendes Icon sucht, hier gibt es zwei die benutzt werden könnten:

/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebariCloud.icns
/Programme/owncloud/Resources/ownCloud.icns

OwnCloud muss zwischendurch diverse Aktualisierungen durchführen. Standardmäßig wird dafür AJAX verwendet, um diese bei Seitenaufruf auszuführen. Wir können diese Aufgabe allerdings auch in einen Cron-Job auslagern.

  1. Dafür muss im Administrationsmenü von OwnCloud unter Cron-Jobs die Einstellung von AJAX auf CRON umgestellt werden.
  2. Anschließend fügen wir einen entsprechenden Cron-Job der jede Minute ausgeführt wird in ArchLinux ein:
    crontab -e
    * * * * * php -f /srv/http/cloud/cron.php
    

EDIT: Gerade diesen Blog gefunden, wo das gleiche Projekt verfolgt wird.

EDIT2: Weiterführender Link zum Thema nginx und OwnCloud.

3 Gedanken zu „re:oyd (8): OwnCloud@Pogoplug V2“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert