Kategoria: Windows

Windows i WebDAV

2008 Lipiec 1 – 11:55

WebDAV

Web-based Distributed Authoring and Versioning. Nic dodac nic ujac ;D

Po co to ?

Po co to w ogole jest, jesli wiekszosc darmowych CMSow ma mozliwosc opracowywania artykulu przez kilka osob. No ale zalozmy ze chodzi nam tutaj o oprogramowanie do ktorego potrzebujemy np o Subversion (SVN) albo system kontroli wersji (CVS), w tej sytuacji CMS nam sie nie przyda.

Idac dalej wciaz poddaje potrzebe korzystania z WebDAVa pod watpliwosc, skoro mozna bez problemu mountowac dowolne dyski sieciowe z samby, nfs, mountowanie ssh itp… jedynym klopotem jest to ze to wszystko jest proste, ale tylko w Linuxie (patrz WebDAV w Linuxie).
Naturalnie SVN na wszystkich mountowanych dyskach dziala jak marzenie, bo czemu mialby tego nie robic ;D

WebDAV = Web Folder

Oczywiste jest ze Windows mountowania ssh nie ma i miec nie bedzie (owszem mozna rzucic kilkadziesiat $ na bardzo sympatyczne programiki do tego).
Ale co ciekawe, Windows ma wbudowana obsluge WebDAV ! WOW ! Nazywa sie to Folder Sieciowe (Web Folder).

UWAGA: Windows VISTA nie posiada domyslnie klienta WebDAV, nalezy go doinstalowac z Updateow (patrz KB907306).

Windows WebDAV problem

Ok, tak wiec chcemy wrzucac jakies pliki do sieci w prosty sposob zarowno z Windowsa jak i z Linuxa. Sprawa sie wydaje prosta, poniewaz narzedzia w obu systemach sa dostepne i darmowe. Tak wiec zakladamy sobie gdzies WebDAVa (na 90% na serwerze Apache2 z modulem WebDAV).

Klikamy na Otoczenie sieciowe, Dodaj miejsce sieciowe, potem Dalej, potem wybieramy Inne miejsce sieciowe i z radoscia wpisujemy nasz katalog WebDAV w podane okienko. Np bezposrednio z przegladarki:

  • http://www.costam.nic/webdav/

Mozliwe ze od razu polaczenie zostanie odrzucone, ale mozliwe ze zostaniemy zapytani o haslo, ale polaczenie sie i tak nie uda (wyskakuje zwykle „ladne” okienko do hasla).

No tak, tego mozna bylo sie spodziewac 馃槈 Znowu Windows…
Wiec oczywiscie zauwazamy nasz blad i usuwamy / na koncu.

  • http://www.costam.nic/webdav

Tu niestety powtorka i nie udane polaczenie. To sprobujmy zapisac adres w innym sposob…

  • \\www.costam.nic\webdav\
  • \\www.costam.nic\webdav

Znowu niepowodzenie… To sprobujmy wyszukany w google trik, zeby dodac # lub . na koncu adresu.

  • http://www.costam.nic/webdav/.
  • \\www.costam.nic\webdav\.
  • http://www.costam.nic/webdav/#
  • \\www.costam.nic\webdav\#
  • http://www.costam.nic/webdav.
  • \\www.costam.nic\webdav.

Proba podlaczenia sie Windowsem do WebDAV niestety konczy sie niepowodzeniem.

Rozwiazanie 1

Rozwiazanie jest o dziwo proste, ale za razem skomplikowane… jest za to na pewno troche nieintuicyjne

  • http://www.costam.nic//webdav

UWAGA: Zwroc uwage na podwojne lamane po adresie serwera !

Wpisanie powyzszej linii spowoduje wyskoczenie troszke inaczej wygladajacego okienka od hasla. Naturalnie polaczenie zostanie nawiazane bez problemu i umozliwi natychmiastowe korzystanie z WebDAVa z Windowsa.

Logiczne rozwiazanie 2

To rozwiazanie jest po prostu logiczne, ale jest bardziej skomplikowane jesli ktos jest nieobyty z Windom.

Chodzi o to ze windows nie lubi basic-auth (HTTP basic access authentication) nalezy mu po prostu podac zeby zaczal to lubic. Natomiast dlaczego poprzednie rozwiazanie dziala nie mam zielonego pojecia… 馃槈

Aby zalatwic sprawe nalezy w rejestrze w czesci

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters

nalezy dodac klucz

UseBasicAuth

o wartosci niezerowej (najlepiej 1). Plik REG to zautomatyzowania tego procesu wyglada tak:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters]
"UseBasicAuth"="1"

Wpisanie tego do rejestru rozwiazuje caly problem. UWAGA: Oczywiste jest ze nalezy od razu zapuscic rebuta ;D
Poprawnie podlaczony zasob WebDAV wyglada mniej wiecej tak:

  • (przy montowaniu \\serwer\)
  • (przy montowaniu http://serwer/)

Nie wiem jaka jest roznica pomiedzy jednym a drugim. Daje to mozliwosc dodatkowego uproszczenia i zautomatyzowania procesu podlaczania folderu sieciowego, poniewaz mozna uzyc komend:

NET USE Z: \\www.costam.nic\webdav

lub

NET USE Z: http://www.costam.nic/webdav

Poprawnie zmapowany katalog (niewazne czy przez \\serwer\ czy http://serwer/) wyglada tak:

  • (z dziwnego powodu nie moge wpisac nazwy dluzszej niz ok 16 znakow)

Nalezy rowniez zwrocic uwage na dodatkowe opcje takie ja:

  • /USER:login (podaje od razu login)
  • /PERSISTENT:yes (otwiera polaczenie po nowym uruchomieniu systemu)

Czyli komenda montujaca w pelnej krasie wyglada tak:

NET USE Z: http://www.costam.nic/webdav haslo /USER:login /PERSISTENT:yes

Skrypty

Skrypt dodajacy odpowiedni wpis w rejestrze.

UWAGA: Po dodaniu wpisu do rejestru nalezy zrestartowac komputer !

  1. 1 Trackback(s)

  2. Cze 30, 2010: WebDAV – Debian [serwer] + Vista [Client] « M贸j blog

Dodaj komentarz

Tw贸j adres email nie zostanie opublikowany. Pola, kt贸rych wype艂nienie jest wymagane, s膮 oznaczone symbolem *