我用 PHP 开发的 webdav 协议的软件 phpdav

我用php开发了一个webdav协议的软件phpdav
github地址:
https://github.com/xinghanking/phpdav

功能作用介绍:
https://zhuanlan.zhihu.com/p/64740062

安装使用说明:
运行环境要求:

  1. php5.6 以上版本;
  2. nginx1.11.0以上版本(建议) ;

安装步骤

  1. 从github上获取phpdav代码,放置在你要做为phpdav代码的运行目录内,如:/home/work/phpdav
  2. 修改conf/config.ini.php里
    $cloud_root = null;
    为你要映射的目录地址,
    注意要给你php的执行用户读写执行权限
    3 . 修改nginx配置,参考

    
    server {
    listen       443 ssl;
    server_name  cloud.httpsdav.club;
    ssl_certificate      ssl/phpdav.crt;
    ssl_certificate_key  ssl/phpdav.key;
    ssl_session_timeout  5m;
    ssl_protocols        SSLv3 TLSv1;
    ssl_ciphers          ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    
    access_log                            /home/phpdav/phpdav/logs/nginx/access.log  main;
    charset                                   utf-8;
    sendfile                                   on;
    tcp_nodelay                            on;    #关闭Nagle算法,数据包直接发送
    client_max_body_size            0;     #不限制body大小
    client_body_in_file_only          clean; # 连接断开后清除储存的临时数据文件
    client_body_in_single_buffer  on;  
    location / {
        root                          /home/work/phpdav/interface;
        rewrite                       .*  /index.php break;
        fastcgi_pass                  unix:/home/work/phpdav/server/run/php-cgi.sock;
        fastcgi_keep_conn               on;
        fastcgi_limit_rate                   0;
        fastcgi_request_buffering     on;
        fastcgi_cache_revalidate      on;
        fastcgi_pass_request_headers  on;
        fastcgi_force_ranges             on;
        fastcgi_connect_timeout       600s;
        fastcgi_read_timeout             600s;
          fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
       fastcgi_param  QUERY_STRING       $query_string;
       fastcgi_param  REQUEST_METHOD     $request_method;
       fastcgi_param  CONTENT_TYPE       $content_type;
       fastcgi_param  CONTENT_LENGTH     $content_length;
       fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
       fastcgi_param  REQUEST_ID         $request_id;
       fastcgi_param  REQUEST_URI        $request_uri;
       fastcgi_param  REQUEST_BODY_FILE  $request_body_file;
       fastcgi_param  DOCUMENT_URI       $document_uri;
       fastcgi_param  DOCUMENT_ROOT      $document_root;
       fastcgi_param  SERVER_PROTOCOL    $server_protocol;
       fastcgi_param  REQUEST_SCHEME     $scheme;
       fastcgi_param  HTTPS              $https if_not_empty;
    
       fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
       fastcgi_param  SERVER_SOFTWARE    phpdav-1.0;
    
       fastcgi_param  REMOTE_ADDR        $remote_addr;
       fastcgi_param  REMOTE_PORT        $remote_port;
       fastcgi_param  SERVER_ADDR        $server_addr;
       fastcgi_param  SERVER_PORT        $server_port;
       fastcgi_param  SERVER_NAME        $server_name;
      }
    }

-----
你可以直接将以上配置复制到你的nginx.conf的http配置项内,
只要修改里面的 listen、server_name、 root 、 fastcgi_pass配置项
如果不开启ssl ,可以删除里面的ssl相关配置项,如果要开启ssl,请修改以上ssl的ssl_certificate、ssl_certificate_key配置项
如果你使用的nginx是低于nginx1.11.0版本,请将
 fastcgi_param  REQUEST_ID         $request_id;
 去掉,因为 $request_id 是在nginx1.11.0版本加入的
重启nginx,然后就可以在你的本地电脑尝试挂载使用了。
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!