[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[webdav-jp:1019] Re: Mac OS X 予期しないエラーでファイル名変更や移動できず



  吉山です。

On Mon, 24 May 2004 17:57:46 +0900
三浦 <ymiura@xxxxxxxxxxxxxxxx> wrote:

> > こんにちは幸です。
> > 質問の内容が的確でなかったのかレスが付きそうもないので
> > Vine Linuxのほうで一度、恐縮ですがお伺いしてみたいと思います。
> > ご理解いただければ幸いです、よろしくお願いいたします。
> > 
> 
> 幸さんはじめまして。
> 私も少し前に同じ現象にぶつかりました。
> 
> 私の環境では、アクセスログを見たところ
> MOVEに対して502エラーが出ていました。
> 
> MacOSがMOVEを出すとき、
> 移動先がDAVサーバーではなくローカルになっており、
> そのせいで502エラーが出てしまうそうです。

  このあたりですかね。
  仮に、ここで言うローカルが相対パスやフルパス部分という意味であれば、クラ
イアントが MacOS と分かっている場合のみ URI を補完してやれば良さそうです。

---
/* handle the COPY and MOVE methods */
static int dav_method_copymove(request_rec *r, int is_move)
{
---
    /* get the destination URI */
    dest = apr_table_get(r->headers_in, "Destination");
    if (dest == NULL) {
        /* Look in headers provided by Netscape's Roaming Profiles */
        const char *nscp_host = apr_table_get(r->headers_in, "Host");
        const char *nscp_path = apr_table_get(r->headers_in, "New-uri");

        if (nscp_host != NULL && nscp_path != NULL)
            dest = apr_psprintf(r->pool, "http://%s%s";, nscp_host, nscp_path);
    }
    if (dest == NULL) {
        /* This supplies additional information for the default message. */
        ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
                      "The request is missing a Destination header.");
        return HTTP_BAD_REQUEST;
    }

    lookup = dav_lookup_uri(dest, r, 1 /* must_be_absolute */);		←絶対URI?
    if (lookup.rnew == NULL) {
        if (lookup.err.status == HTTP_BAD_REQUEST) {
            /* This supplies additional information for the default message. */
            ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r,
                          "%s", lookup.err.desc);
            return HTTP_BAD_REQUEST;
        }

        /* ### this assumes that dav_lookup_uri() only generates a status
         * ### that Apache can provide a status line for!! */

        return dav_error_response(r, lookup.err.status, lookup.err.desc);
    }
---
吉山あきら<yosshy@xxxxxxxxxxxx>