Apache2.2 webdav basic 配置 Getting Webdav Working 浏览 网站的root files || vsftp访问FTP用户根目录以外的数据的实现方法 | 解决上传图片时的HTTP ERROR错误

http://httpd.apache.org/docs/2.2/mod/mod_dav.html

https://serverfault.com/questions/892435/getting-webdav-working

Upgrading to Apache 2.4 will prevent WebDAV listing of directories containing index files

 

Full Example

DavLockDB /usr/local/apache2/var/DavLock

DirectoryIndex disabled

DirectoryIndex none

#以上两个都可以用,webdav客户端不用被index文件挡住!

Order Allow,Deny
Allow from all
Dav On

AuthType Basic
AuthName DAV
AuthUserFile user.passwd

Require user admin

在Linux里,把自动备份放到另外的目录。如:/home/user1/databackup

但同时希望在不改动FTP权限及用户根目录的的基础上,仍然可以通过FTP下载这些备份文件。

假设FTP用户为user2,其FTP根目录是/home/user2。

首先想到的是用ln建立连接,但发现以下问题:

第一,硬链接只支持文件链接,不支持目录链接,而且要求文件在同一个文件系统。

第二,vsftp默认配置不支持ln连接。(建了软连接以后,从FTP目录的软连接打不开文件夹,或许就算打开进去了,退回上级目录也是个问题。)

换个思路,使用mount --bind把目录加载过来就可以了:

在/home/user2下建一个databackup文件夹,即:/home/user2/databackup,

然后执行下面的命令把/home/user1/databackup挂载到/home/user2/databackup即可。

mount --bind /home/user1/databackup /home/user2/databackup

以后要解除挂载时,执行如下命令把/home/user2/databackup目录的挂载卸掉即可。

umount /home/user2/databackup

至于使用ln怎么实现,还得再研究。

参考自:http://www.esojourn.org/blog/post/linux-mount-ln.php

 

==============================================================

修改 Apache 上传文件最大值限制

打开 php.ini, 找到下面的项并修改之。下面以上传100M为例。

sudo vim /etc/php.ini

file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开

upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹

upload_max_filesize = 100m ;望文生意,即允许上传文件大小的最大值。默认为2M

post_max_size = 100M ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M

一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。 但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:

max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒

max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒

memory_limit = 128M ;每个PHP页面所吃掉的最大内存,默认8M
全部设置好之后,重启

systemctl restart httpd

原文出处:nginxx -> http://nginxx.com/archives/113.html