Activer les URL sans index.php¶
Depuis ownCloud 9.0.3, vous devez explicitement configurer et activer les URL sans index.php (par exemple https://exemple.com/apps/files/ au lieu de https://exemple.com/index.php/apps/files/). La documentation suivantes fournit les indications pour configurer ceci pour le serveur Web Apache. Ces étapes ne sont pas nécessaires si vous utilisez le serveur Web nginx, car ceci est déjà activé dans la Exemples de configurations pour nginx.
Prérequis¶
Avant de pouvoir utiliser les URL sans index.php, vous devez activer les modules Apache mod_rewrite et mod_env. De plus, la directive AllowOverride All dans le vhost de votre serveur Web est nécessaire. Veuillez consulter le manuel Apache pour savoir comment activer et configurer cela.
Ces instructions ne fonctionnent qu’avec Apache en association avec le module Apache pour PHP mod_php. Les autres modules comme php-fpm ou mod_fastcgi ne sont pas supportés.
Enfin, l’utilisateur exécutant votre serveur Web (par exemple www-data) doit pouvoir écrire dans le fichier .htaccess fourni dans le répertoire racine d’ownCloud (par exemple /var/www/owncloud/.htaccess). Si vous avez appliqué Renforcement des permissions de répertoires, l’utilisateur pourrait ne pas pouvoir écrire dans ce fichier et la mise à jour nécessaire échouera. Vous devez supprimer ces permissions renforcées temporairement en suivant les étapes décrites dans Permissions pour la mise à jour.
Étapes de configuration¶
La première étape est de configurer les options overwrite.cli.url et htaccess.RewriteBase dans le fichier config.php (voir Paramètres de Config.php). Si vous accéder à votre instance ownCloud via https://exemple.com/, les deux options suivantes doivent être configurées :
'overwrite.cli.url' => 'https://exemple.com',
'htaccess.RewriteBase' => '/',
Si l’instance est accédée via https://exemple.com/owncloud, l’option de configuration suivante est nécessaire :
'overwrite.cli.url' => 'https://exemple.com/owncloud',
'htaccess.RewriteBase' => '/owncloud',
La seconde étape est d’activer dans ownCloud les URL sans index.php. Ceci est réalisé :
- lors de la prochaine mise à jour de votre instance ownCloud ;
- en lançant manuellement la commande occ occ maintenance:update:htaccess (voir Utilisation de la commande occ).
Après cela, votre instance ne devrait plus avoir d’URL avec index.php.
Dépannage¶
Si l’accès à votre installation d’ownCloud échoue après avoir suivi ces instructions et que vous voyez des messages comme ceci dans votre fichier journal d’ownCloud :
The requested uri(\\/login) cannot be processed by the script '\\/owncloud\\/index.php'
assurez-vous d’avoir configuré correctement les deux options dans votre fichier config.php comme indiqué précédemment.