CentOS 5.5下建立Apache2 与WebDAV
本指南说明如何建立与Apache2 WebDAV在CentOS 5.5服务器。WebDAV代表网络分布式创作及版本,是一套延伸到HTTP协议,允许用户直接编辑文件架阿帕奇服务器上以便它们不需要通过FTP上传下载。当然,WebDAV也可以被用来上传和下载文件。
我不敢保证这个方法对你也试用。
1首项附注
我正在使用一个CentOS 5.5服务器的IP地址 192.168.0.100192.168.0.100here.在这里。
2安装WebDAV 2
如果阿帕奇不是已经安装了,将它安装如下:
yum install httpd
然后打开/etc/httpd/conf/httpd.conf 并确认 dav and dav_fs 在 LoadModule 模块中开启并是其中一部分,(他们应该是默认的)。
vi /etc/httpd/conf/httpd.conf
[...]
LoadModule dav_module modules/mod_dav.so
[...]
LoadModule dav_fs_module modules/mod_dav_fs.so
[...]
然后创建系统启动链接,重新启动阿帕奇,
chkconfig --levels 235 httpd on
/etc/init.d/httpd start
3创建一个虚拟主机,
我将创建一个默认的阿帕奇vhost在该目录下 /var/www/web1/web网页.。为了这个目的,我将增加一个默认的vhost结束的时候 /etc/httpd/conf/httpd.confhttpd.conf. 。如果你已经有了一个vhost为你务必调整WebDAV本教程,你必须对你所处情况进行调整。
首先,我们创建目录 /var/www/web1/web 而使架阿帕奇用户和组为该目录的主人。
mkdir -p /var/www/web1/web
chown apache:apache /var/www/web1/web
然后加入新vhost在结束的时候 /etc/httpd/conf/httpd.conf
vi /etc/httpd/conf/httpd.conf
[...]
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/web1/web/
<Directory /var/www/web1/web/>
Options Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
然后重新加载阿帕奇。
/etc/init.d/httpd reload
4 配置WebDAV上的虚拟主机
现在我们创建WebDAV密码文件 /var/www/web1/passwd.dav 进行用户测试,
htpasswd -c /var/www/web1/passwd.dav test
你将被要求键入一个密码为用户 test测试.(请不要使用-c 开关如果/var/www/web1/passwd.dav is 已经存在,可能会造成文件内容丢失和肯能重建。)
现在我们改变/var/www/web1/passwd.dav 文件权限,只容许root和阿帕奇组可以访问。
chown root:apache /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.dav
现在我们修改一下vhost 在/etc/httpd/conf/httpd.conf 中几行信息。
vi /etc/httpd/conf/httpd.conf
[...]
Alias /webdav /var/www/web1/web
<Location /webdav>
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /var/www/web1/passwd.dav
Require valid-user
</Location>
[...]当调用指令呼叫/webdav, WebDAV 但是你仍然可以访问文档的vhost根源,所有其他的url的vhost仍然是“正常”的HTTP。
最后vhost应该看起来像这样:
[...]
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/web1/web/
<Directory /var/www/web1/web/>
Options Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
Alias /webdav /var/www/web1/web
<Location /webdav>
DAV On
AuthType Basic
AuthName "webdav"
AuthUserFile /var/www/web1/passwd.dav
Require valid-user
</Location>
</VirtualHost>
然后加载阿帕奇
/etc/init.d/httpd reload
5测试WebDAV 5
我们现在 安装cadaver,一个命令行WebDAV客户:
yum install cadaver
为了验证WebDAV类型,
cadaver http://localhost/webdav/
应该提示用户名。密码类型测试。如果一切顺利的话,以为着webdav工作正常。