nov 29

Web-based Distributed Authoring and Versioning (WebDAV)

O Web-DAV é possibilidade que o administrator tem de integrar extensões para o Hypertext Transfer Protocol e possibilitar que os usuários editem e gerenciem arquivos em servidores remotos sem a necessidade de fazer upload com ftp.

O webDAV pode ser facilmente integrado ao servidor HTTPD como apache2 e o lighttpd, basta ativar sua diretiva.

a) Como habilitar o webdav em lighttpd no Debian ou Ubuntu:

#apt-get install lighttpd lighttpd-mod-webdav apache2-utils

b) Aṕos a instalação é só criar o diretorio/var/run/lighttpd e alterar com o chown o usuario dono e o grupo dono para do apache pois este diretório irá conter um banco de dados SQLite necessários pelo WebDAV.

#mkdir /var/run/lighttpd
#chown www-data:www-data /var/run/lighttpd

c) O proximo passo é o mais importante, pois é necessario habilitar o módulo ”mod_alias” e  ”mod_webdav” no lighttpd em /etc/lighttpd/lighttpd.conf.

server.modules              = (
“mod_access”,
“mod_alias”,
“mod_accesslog”,
#           “mod_rewrite”,
#           “mod_redirect”,
#           “mod_status”,
#           “mod_evhost”,
#           “mod_compress”,
#           “mod_usertrack”,
#           “mod_rrdtool”,
“mod_webdav”,
#           “mod_expire”,
#           “mod_flv_streaming”,
#           “mod_evasive”
)

#vi /etc/lighttpd/lighttpd.conf

E HABILITE EM server.modules como esta abaixo (vale lembrar que por falta de espaço aqui no blog eu coloquei um ao lado do outro, pois o arquivo é concatenado com uma diretiva abaixo da outra em linha).

server.modules   (“mod_access”,  ”mod_alias”, ”mod_accesslog”,   “mod_webdav”)

Após a inclusão dos módulos vc ja pode reinciar o daemon.

#/etc/init.d/lighttpd restart ( ou utilize o invoke-rc.d ou o comando service desde que vc tenha o pacote sysvconfig instalado).

d) Os módulos ativados sem problemas vc agora pode disponibilizar a sua integração aos seus virtualhosts. Vamos imaginar um dos acessos utilizando o cliente.com.br como exemplo abaixo E como configurar agora o webdav em seu virtualhost ativando a utiilização de senhas pelo htpasswd.

#mkdir -p /var/www/cliente.com.br/web/

#chown www-data:www-data /var/www/cliente.com.br/web

NOTA: Não esqueça de entrar em /etc/lighttpd/lighttpd.conf e habilitar o dominio do seu cliente para responder neste diretorio, como vc sempre fez e reinicie o daemon do lighttpd.

[...]

$HTTP["host"] == “www.cliente.com.br” {

server.document-root = “/var/www/cliente.com.br/web”

}

[...]

#/etc/init.d/lighttpd restart

NOTA: Abaixo estarei criando acesso para o virtualhost pelo htpasswd e alterando o usuario dono para o mesmo do apache e servidores web e alterando a permissão retirando toda leitura de outros, o que seria muito serio se vc deixasse.

#htpasswd -c /var/www/cliente.com.br/passwd.dav user
#chown root:www-data /var/www/cliente.com.br/passwd.dav
#chmod 640 /var/www/cliente.com.br/passwd.dav

-

PARA CONCLUIR O PROCEDIMENTO BASTA ATIVAR O WEBDAV PARA O SEU VIRTUALHOST E UTLIZAR QUALQUER UTILITARIO CLIENTE COMO O cadaver PARA ACESSO A LINHA DE COMANDO DO WEBDAV E TESTAR ;)

-

#vi /etc/lighttpd/lighttpd.conf

$HTTP["host"] == “www.example.com” {

server.document-root = “/var/www/cliente.com.br/web”

alias.url = ( “/webdav” => “/var/www/cliente.com.br/web” )

$HTTP["url"] =~ “^/webdav($|/)” {

webdav.activate = “enable”

webdav.is-readonly = “disable”

webdav.sqlite-db-name = “/var/run/lighttpd/lighttpd.webdav_lock.db”

auth.backend = “htpasswd”

auth.backend.htpasswd.userfile = “/var/www/cliente.com.br/passwd.dav”

auth.require = ( “” => ( “method” => “basic”,

“realm” => “webdav”,

“require” => “valid-user” ) )

}

-

e) NO APACHE2 é mais fácil ainda é só habilitar os seguintes módulos com o a2enmod (nojentinho isso né?):

#a2enmod dav_fs

#a2enmod dav

-

E editar o arquivo de virtualhost para o apache2 do Debian e Ubuntu que esta em /etc/apache2/sites-available/.

(exemplo)#vi /etc/apache2/sites-available/cliente.com.br

-

NameVirtualHost *

<VirtualHost *>

ServerAdmin webmaster@cliente.com.br

DocumentRoot /var/www/cliente.com.br/web/

<Directory /var/www/cliente.com.br/web/>

Options Indexes MultiViews

AllowOverride None

Order allow,deny

allow from all

</Directory>

</VirtualHost>

-

#/etc/init.d/apache2 restart

-

ATENCAO EM ‘ webdav.activate = “enable” ‘, pq se isso nao estiver habilitado, foi foi foi pra vc, pois nao via funcionar ;)

#apt-get install cadaver

#cadaver http://www.cliente.com.br/webdav/

-

(ubuntu):~# cadaver http://www.cliente.com.br/webdav/

Authentication required for webdav on server `www.cliente.com.br’:

Username: user

Password:

dav:/webdav/> quit

Connection to `www.cliente.com.br’ closed.

(ubuntu):~#

É possível testar o serviço de webdav no GNOME também utilizando o gerenciador de de servidores do gnome:

é o poder ;)

Comments are closed.

preload preload preload
Powered by Moblie Video for WordPress + Daniel Watrous