GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Utilisation de WebDAV avec ISPConfig 3 sur Ubuntu 9.10

Utilisation de WebDAV avec ISPConfig 3 sur Ubuntu 9.10

Ce guide explique comment configurer et utiliser WebDAV sur un site Web créé avec ISPConfig 3 sur un serveur Ubuntu 9.10. WebDAV signifie Web-based Distributed Authoring and Versioning et est un ensemble d'extensions du protocole HTTP qui permettent aux utilisateurs de modifier directement des fichiers sur le serveur Apache afin qu'ils n'aient pas besoin d'être téléchargés/téléchargés via FTP. Bien entendu, WebDAV peut également être utilisé pour charger et télécharger des fichiers.

Je n'émets aucune garantie que cela fonctionnera pour vous !

1 Remarque préliminaire

J'utilise un serveur Ubuntu 9.10 avec le nom d'hôte server1.example.com ici.

Étant donné que nous devons exécuter toutes les étapes de ce didacticiel avec les privilèges root, nous pouvons soit ajouter la chaîne sudo à toutes les commandes de ce didacticiel, soit nous devenons root dès maintenant en tapant

sudo su 

Je suppose qu'ISPConfig 3 est déjà installé (selon The Perfect Server - Ubuntu 9.10 [ISPConfig 3]). Je vais activer WebDAV pour le site Web www.example.com / example.com (qui a été créé avec ISPConfig 3) qui a la racine du document /var/www/clients/client1/web1/web (ou /var/www/example .com/web qui est un lien symbolique vers /var/www/clients/client1/web1/web).

Le vhost www.example.com / example.com se présente actuellement comme suit :

cat /etc/apache2/sites-available/example.com.vhost 
<Directory /var/www/example.com>
    AllowOverride None
    Order Deny,Allow
    Deny from all
</Directory>

<VirtualHost *:80>
      DocumentRoot /var/www/example.com/web

    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]

    ErrorLog /var/log/ispconfig/httpd/example.com/error.log

    ErrorDocument 400 /error/400.html
    ErrorDocument 401 /error/401.html
    ErrorDocument 403 /error/403.html
    ErrorDocument 404 /error/404.html
    ErrorDocument 405 /error/405.html
    ErrorDocument 500 /error/500.html
    ErrorDocument 503 /error/503.html

    <Directory /var/www/example.com/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <Directory /var/www/clients/client1/web1/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    # mod_php enabled
    AddType application/x-httpd-php .php .php3 .php4 .php5
    php_admin_value sendmail_path "/usr/sbin/sendmail -t -i [email protected]"
    php_admin_value upload_tmp_dir /var/www/clients/client1/web1/tmp
    php_admin_value session.save_path /var/www/clients/client1/web1/tmp
    php_admin_value open_basedir /var/www/clients/client1/web1/web:/var/www/clients/client1/web1/tmp:/usr/share/php5


</VirtualHost>

2 Activation de WebDAV

Nous pouvons activer les modules WebDAV comme suit :

a2enmod dav_fs
a2enmod dav

Redémarrez Apache :

/etc/init.d/apache2 restart

3 Configurer l'hôte virtuel pour WebDAV

Nous créons maintenant le fichier de mot de passe WebDAV /var/www/clients/client1/web1/passwd.dav avec le test utilisateur (le commutateur -c crée le fichier s'il n'existe pas) :

htpasswd -c /var/www/clients/client1/web1/passwd.dav test

Il vous sera demandé de saisir un mot de passe pour le test utilisateur.

(Veuillez ne pas utiliser le commutateur -c si /var/www/clients/client1/web1/passwd.dav existe déjà car cela recréera le fichier à partir de zéro, ce qui signifie que vous perdrez tous les utilisateurs de ce fichier !)

Nous modifions maintenant les autorisations du fichier /var/www/clients/client1/web1/passwd.dav afin que seuls root et les membres du groupe www-data puissent y accéder :

racine chown :www-data /var/www/clients/client1/web1/passwd.dav
chmod 640 /var/www/clients/client1/web1/passwd.dav

Passons maintenant à l'onglet Options du site Web www.example.com / example.com dans ISPConfig 3 et ajoutons les lignes suivantes dans le champ des directives Apache :

<Directory /var/www/clients/client1/web1/web>
                Options +Indexes +MultiViews
</Directory>

Alias /webdav /var/www/clients/client1/web1/web

<Location /webdav>
 DAV On
 AuthType Basic
 AuthName "webdav"
 AuthUserFile /var/www/clients/client1/web1/passwd.dav
 Require valid-user
</Location>

La directive Alias ​​fait (avec ) que lorsque vous appelez /webdav, WebDAV est invoqué, mais vous pouvez toujours accéder à l'intégralité de la racine du document du vhost. Toutes les autres URL de ce vhost sont toujours HTTP "normales".

Après quelques instants (ISPConfig 3 doit d'abord réécrire le vhost), le vhost final devrait ressembler à ceci :

cat /etc/apache2/sites-available/example.com.vhost
<Directory /var/www/example.com>
    AllowOverride None
    Order Deny,Allow
    Deny from all
</Directory>

<VirtualHost *:80>
      DocumentRoot /var/www/example.com/web

    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin [email protected]

    ErrorLog /var/log/ispconfig/httpd/example.com/error.log

    ErrorDocument 400 /error/400.html
    ErrorDocument 401 /error/401.html
    ErrorDocument 403 /error/403.html
    ErrorDocument 404 /error/404.html
    ErrorDocument 405 /error/405.html
    ErrorDocument 500 /error/500.html
    ErrorDocument 503 /error/503.html

    <Directory /var/www/example.com/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
    <Directory /var/www/clients/client1/web1/web>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    # mod_php enabled
    AddType application/x-httpd-php .php .php3 .php4 .php5
    php_admin_value sendmail_path "/usr/sbin/sendmail -t -i [email protected]"
    php_admin_value upload_tmp_dir /var/www/clients/client1/web1/tmp
    php_admin_value session.save_path /var/www/clients/client1/web1/tmp
    php_admin_value open_basedir /var/www/clients/client1/web1/web:/var/www/clients/client1/web1/tmp:/usr/share/php5

<Directory /var/www/clients/client1/web1/web>
                Options +Indexes +MultiViews
</Directory>

Alias /webdav /var/www/clients/client1/web1/web

<Location /webdav>
 DAV On
 AuthType Basic
 AuthName "webdav"
 AuthUserFile /var/www/clients/client1/web1/passwd.dav
 Require valid-user
</Location>
</VirtualHost>

Étant donné que mod_dav s'exécute avec les privilèges de l'utilisateur et du groupe Apache (tous deux www-data sur Ubuntu), nous devons modifier le propriétaire et le groupe de /var/www/clients/client1/web1/web en www-data de manière récursive (sinon vous ne serez pas autorisé à créer/modifier/supprimer des fichiers/répertoires à l'aide de WebDAV) :

chown -R www-data:www-data /var/www/clients/client1/web1/web

Veuillez noter que cela peut causer des problèmes pour les fichiers PHP si vous exécutez PHP via FastCGI, CGI ou suExec. Ce n'est pas un problème si vous utilisez mod_php.

Vous pouvez maintenant commencer à utiliser WebDAV comme décrit dans les chapitres 5, 6 et 7 du didacticiel Comment configurer WebDAV avec Apache2 sur Ubuntu 9.10. L'URL WebDAV est http://www.example.com/webdav/ pour les clients Linux et http://www.example.com:80/webdav/ pour les clients Windows.

  • WebDAV :http://www.webdav.org/
  • Apache :http://httpd.apache.org/
  • Ubuntu :http://www.ubuntu.com/
  • ISPConfig :http://www.ispconfig.org/

Panels
  1. Utiliser Notify-send avec Cron ?

  2. Utiliser Ubuntu avec une configuration à deux écrans ?

  3. SuPHP sur Fedora 7 ou CentOS 5 avec ISPConfig

  4. Comment installer ISPConfig 3 sur Ubuntu 18.04

  5. Installer PHP 7.1 avec Nginx sur Ubuntu 16.04

Installer Ubuntu 16.04 - Avec des captures d'écran

Le serveur parfait - Ubuntu 11.10 avec Nginx [ISPConfig 3]

Comment utiliser plusieurs versions de PHP (PHP-FPM et FastCGI) avec ISPConfig 3 (Ubuntu 13.04)

Comment utiliser plusieurs versions de PHP (PHP-FPM et FastCGI) avec ISPConfig 3 (Ubuntu 12.10)

Comment utiliser plusieurs versions de PHP (PHP-FPM et FastCGI) avec ISPConfig 3 (Ubuntu 12.04 LTS)

Utilisation de la messagerie Web RoundCube avec ISPConfig 3 sur Debian Wheezy (nginx)