ownCloud Installation · 3 min read · Jan 23, 2026

ownCloud 5.0 auf Nginx (LEMP) unter Debian Wheezy ausführen

ownCloud 5.0 auf Nginx (LEMP) unter Debian Wheezy ausführen

Dieses Tutorial zeigt, wie Sie ownCloud 5.0 auf einem Debian Wheezy-System installieren und ausführen können, das nginx anstelle von Apache installiert hat (LEMP = L inux + nginx (ausgesprochen “ e ngine x”) + M ySQL + P HP). nginx ist ein HTTP-Server, der viel weniger Ressourcen als Apache benötigt und Seiten viel schneller liefert, insbesondere statische Dateien.

Ich übernehme keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

Ich möchte ownCloud in einem vhost namens www.example.com / example.com mit dem Dokumentenstamm /var/www/www.example.com/web installieren.

Sie sollten eine funktionierende LEMP-Installation haben, wie in diesem Tutorial gezeigt:

  • Nginx mit PHP5 (und PHP-FPM) und MySQL-Unterstützung (LEMP) unter Debian Wheezy installieren

2 APC und einige andere Anforderungen installieren

APC ist ein kostenloser und offener PHP-Opcode-Cache zur Zwischenspeicherung und Optimierung von PHP-Zwischencode. Es ist ähnlich wie andere PHP-Opcode-Caches, wie eAccelerator und XCache. Es wird dringend empfohlen, einen dieser Caches zu installieren, um Ihre PHP-Seite zu beschleunigen.

APC kann wie folgt installiert werden:

apt-get install php-apc

Installieren Sie einige andere Anforderungen:

apt-get install php-xml-parser php5-intl php5-sqlite php5-mysql smbclient curl libcurl3 php5-curl

Laden Sie PHP-FPM wie folgt neu:

/etc/init.d/php5-fpm reload

3 ownCloud installieren

Der Dokumentenstamm meiner www.example.com-Website ist /var/www/www.example.com/web - wenn er nicht existiert, erstellen Sie ihn wie folgt:

mkdir -p /var/www/www.example.com/web

Laden Sie als nächstes ownCloud von der ownCloud-Website auf Ihren Server herunter, entpacken Sie es und platzieren Sie es in Ihrem Dokumentenstamm:

cd /tmp
wget http://download.owncloud.org/community/owncloud-5.0.13.tar.bz2
tar xvfj owncloud-5.0.13.tar.bz2
rm -f owncloud-5.0.13.tar.bz2
cd owncloud
mv * .htaccess /var/www/www.example.com/web/

Es wird empfohlen, den Dokumentenstamm und die darin enthaltenen ownCloud-Dateien für den nginx-Daemon, der als Benutzer www-data und Gruppe www-data ausgeführt wird, beschreibbar zu machen:

chown -R www-data:www-data /var/www/www.example.com/web

Wenn Sie noch keine MySQL-Datenbank für ownCloud erstellt haben (einschließlich eines MySQL ownCloud-Benutzers), können Sie dies wie folgt tun (ich nenne die Datenbank in diesem Beispiel owncloud, und der Benutzer heißt owncloud_admin, und sein Passwort ist owncloud_admin_password):

mysqladmin -u root -p create owncloud

mysql -u root -p

GRANT ALL PRIVILEGES ON owncloud. TO ‘owncloud_admin’@’localhost’ IDENTIFIED BY ‘owncloud_admin_password’;
GRANT ALL PRIVILEGES ON owncloud.
TO ‘owncloud_admin’@’localhost.localdomain’ IDENTIFIED BY ‘owncloud_admin_password’;

FLUSH PRIVILEGES;

quit;

Als nächstes erstellen wir eine nginx vhost-Konfiguration für unseren www.example.com vhost im Verzeichnis /etc/nginx/sites-available/ wie folgt:

vi /etc/nginx/sites-available/www.example.com.vhost

| server { listen 80; server_name www.example.com example.com; root /var/www/www.example.com/web; if ($http_host != "www.example.com") { rewrite ^ http://www.example.com$request_uri permanent; } index index.php index.html; location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } # Verweigern Sie alle Versuche, auf versteckte Dateien wie .htaccess, .htpasswd, .DS_Store (Mac) zuzugreifen. location ~ \. { deny all; access_log off; log_not_found off; } client_max_body_size 10G; # maximale Upload-Größe festlegen rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect; rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect; rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect; rewrite ^/apps/calendar/caldav.php /remote.php/caldav/ last; rewrite ^/apps/contacts/carddav.php /remote.php/carddav/ last; rewrite ^/apps/([^/]*)/(.*\.(css|php))$ /index.php?app=$1&getfile=$2 last; rewrite ^/remote/(.*) /remote.php last; error_page 403 = /core/templates/403.php; error_page 404 = /core/templates/404.php; location ~ ^/(data|config|\.ht|db_structure\.xml|README) { deny all; } location / { rewrite ^/.well-known/host-meta /public.php?service=host-meta last; rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; try_files $uri $uri/ /index.php$is_args$args; } location ~ ^(.+?\.php)(/.*)?$ { try_files $1 =404; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$1; fastcgi_param PATH_INFO $2; fastcgi_param HTTPS $https; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_intercept_errors on; fastcgi_index index.php; fastcgi_buffers 64 4K; } location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ { expires 30d; access_log off; } } |

Um den vhost zu aktivieren, erstellen wir einen Symlink zu ihm aus dem Verzeichnis /etc/nginx/sites-enabled/:

cd /etc/nginx/sites-enabled/
ln -s /etc/nginx/sites-available/www.example.com.vhost www.example.com.vhost

Laden Sie nginx neu, damit die Änderungen wirksam werden:

/etc/init.d/nginx reload

Jetzt können wir den web-basierten ownCloud-Installer starten, indem wir zu http://www.example.com gehen - füllen Sie einen Benutzernamen und ein Passwort für das Administratorkonto aus und klicken Sie auf Erweitert. Scrollen Sie dann nach unten…

… und klicken Sie auf MySQL. Dadurch erscheinen die Eingabefelder für die Datenbankdetails. Füllen Sie Ihre Datenbankdetails aus und klicken Sie auf Einrichtung abschließen:

Wenn alles gut geht, sollten Sie die Nachricht Willkommen bei ownCloud sehen:

Die Installation ist nun abgeschlossen, und Sie können mit ownCloud beginnen:

4 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.