Installation OwnCloud · 3 min read · Jan 23, 2026

Exécution d'ownCloud 5.0 sur Nginx (LEMP) sur Debian Wheezy

Exécution d’ownCloud 5.0 sur Nginx (LEMP) sur Debian Wheezy

Ce tutoriel montre comment vous pouvez installer et exécuter ownCloud 5.0 sur un système Debian Wheezy qui a nginx installé au lieu d’Apache (LEMP = L inux + nginx (prononcé “ e ngine x”) + M ySQL + P HP). nginx est un serveur HTTP qui utilise beaucoup moins de ressources qu’Apache et délivre des pages beaucoup plus rapidement, en particulier les fichiers statiques.

Je ne donne aucune garantie que cela fonctionnera pour vous !

1 Remarque préliminaire

Je veux installer ownCloud dans un vhost appelé www.example.com / example.com ici avec le document root /var/www/www.example.com/web.

Vous devriez avoir une installation LEMP fonctionnelle, comme indiqué dans ce tutoriel :

  • Installation de Nginx avec PHP5 (et PHP-FPM) et support MySQL (LEMP) sur Debian Wheezy

2 Installation d’APC et de quelques autres exigences

APC est un cache d’opcodes PHP gratuit et open source pour mettre en cache et optimiser le code intermédiaire PHP. Il est similaire à d’autres caches d’opcodes PHP, tels que eAccelerator et XCache. Il est fortement recommandé d’en avoir un installé pour accélérer votre page PHP.

APC peut être installé comme suit :

apt-get install php-apc

Installez quelques autres exigences :

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

Rechargez PHP-FPM comme suit :

/etc/init.d/php5-fpm reload

3 Installation d’ownCloud

Le document root de mon site web www.example.com est /var/www/www.example.com/web - s’il n’existe pas, créez-le comme suit :

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

Ensuite, téléchargez ownCloud depuis le site web d’ownCloud sur votre serveur, décompressez-le et placez-le dans votre document root :

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/

Il est recommandé de rendre le document root et les fichiers ownCloud qu’il contient accessibles en écriture par le démon nginx qui s’exécute en tant qu’utilisateur www-data et groupe www-data :

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

Si vous n’avez pas encore créé de base de données MySQL pour ownCloud (y compris un utilisateur MySQL ownCloud), vous pouvez le faire comme suit (je nomme la base de données owncloud dans cet exemple, et l’utilisateur s’appelle owncloud_admin, et son mot de passe est 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;

Ensuite, nous créons une configuration de vhost nginx pour notre vhost www.example.com dans le répertoire /etc/nginx/sites-available/ comme suit :

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; } # Refuser toutes les tentatives d'accès aux fichiers cachés tels que .htaccess, .htpasswd, .DS_Store (Mac). location ~ \. { deny all; access_log off; log_not_found off; } client_max_body_size 10G; # définir la taille maximale de téléchargement 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; } } |

Pour activer le vhost, nous créons un lien symbolique vers celui-ci depuis le répertoire /etc/nginx/sites-enabled/ :

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

Rechargez nginx pour que les modifications prennent effet :

/etc/init.d/nginx reload

Maintenant, nous pouvons lancer l’installateur ownCloud basé sur le web en allant sur http://www.example.com - remplissez un nom d’utilisateur et un mot de passe pour le compte administrateur et cliquez sur Avancé. Ensuite, faites défiler vers le bas…

… et cliquez sur MySQL. Cela fera apparaître les champs de saisie pour les détails de la base de données. Remplissez vos détails de base de données et cliquez sur Terminer la configuration :

Si tout se passe bien, vous devriez voir le message Bienvenue dans ownCloud :

L’installation est maintenant terminée, et vous pouvez commencer à utiliser ownCloud :

4 Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.