西安星河湾酒店介绍:在Apache中设置WEBDAV的一点技巧

来源:百度文库 编辑:中财网 时间:2024/04/27 05:01:30
在Apache中设置WEBDAV的一点技巧

 

背景:Apache2.2.6安装在c:/apache22下,操作系统是windowsXP sp2。

要求:
1、在虚拟目录/uploads中的所有文件,只有指定用户(pub1、pub2、pub3、pub4)才有权阅读。
2、在虚拟目录/uploads中的101.doc只能够由pub1编辑,其他三个人不能编辑。201.doc只能够由pub2编辑,其他三个人不能编辑。
3、除101.doc、201.doc外的其他文件,pub1、pub2、pub3、pub4只能阅读,都不能编辑。
4、pub1、pub2、pub3、pub4也不能在虚拟目录/uploads中建立(删除)文件夹和文件。

设置过程
第一步,在c:/apache22下建立user文件夹。
第二步,使用htpasswd.exe,在user文件夹下生成用户文件userfile.pass,增加pub1、pub2、pub3、pub4四个用户。
第三步,在c:/apache22下建立var文件夹。
第四步,在C:/Apache22/conf/extra文件夹下,建立配置文件httpd-dav-uploads.conf,内容如下:
#
##### start ####
DavLockDB "C:/Apache22/var/DavLock"
#
Alias /uploads "C:/Apache22/uploads"
#

  Order Allow,Deny
  Allow from all
  AuthType Basic
  AuthName "FILE WEBDAV TEST"
  AuthUserFile "C:/Apache22/user/userfile.pass"
  Require valid-user
 
    Dav On
   
       Require user pub1
   

   
       Require valid-user
   
   
 

 
    Dav On
   
       Require user pub2
   

   
       Require valid-user
   
  
 


#
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
#
##### end ####
#
第五步,修改主配置文件C:/Apache22/conf/httpd.conf:
(1)在主配置文件末尾增加一行:
Include conf/extra/httpd-dav-uploads.conf
(2)将主配置文件中的以下两行的第一个字符#删除(如果有#号的情况下),变为如下样子(即启用相应的2个功能模块):
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
(3)保存主配置文件

第六步,重新启动Apache。

OK,上述4个要求都可以满足了。

 

技术看点:
1、Files指令的使用;
2、针对单个文件启用WEBDAV(即使用Dav On指令);
3、Limit指令的使用。

附錄:如何在win xp和win7系統下訪問webdav

Win XP:

  1. Install update:Download details: Software Update for Web Folders (KB907306)
  2. Start -> Run -> regedit
  3. Quote:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\WebClient\Parameters
  4. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\WebClient\Parameters
  5. UseBasicAuth -> Change to 1
  6. Added new D-WORD value: FileAttributesLimitInBytes
  7. Give FileAttributesLimitInBytes value 20000
  8. Open Network Locations
  9. Add new network location
  10. Use this url: Quote:http://full.domain.name:80/dav/username/


Win 7

  1. Start -> Run -> Services.msc
  2. Start Webclient service, make it start automatically.
  3. Start -> Run -> regedit
  4. Quote:
  5. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\WebClient\Parameters
  6. UseBasicAuth -> Change to 2
  7. start IE8 ->Tools -> Internet Options -> Connections -> LAN settings / Automatic configuration -> Switch off Automaticaly detect setting
  8. Start -> Run -> cmd
  9. net stop Webclient
  10. net start Webclient
  11. net use * http://full.domain.name/dav/username/  
  12. Now you have a share.