curl上传文件(http)提示“405 Method Not Allowed”
在xp上用hfs搭建了一个http服务器,
通过浏览器界面登录可以实现上传和下载文件。
但是通过命令行执行curl -T downloadlocalfile.txt http://192.168.126.142/httpshare/sample.txt
时,出现405 - 方法不允许错误。
执行curl -o下载文件时,正常。
另外libcurl来实现,只要调用了curl_easy_setopt(easy_handle, CURLOPT_PUT, 1);
或者curl_easy_setopt(easy_handle, CURLOPT_UPLOAD, 1);
就会出现405 - 方法不允许错误。
* About to connect() to 192.168.126.142 port 80 (#0)
* Trying 192.168.126.142... * connected
* Connected to 192.168.126.142 (192.168.126.142) port 80 (#0)
> PUT /httpshare/sample.txt HTTP/1.1
Host: 192.168.126.142
Accept: */*
Content-Length: 4348
Expect: 100-continue
< HTTP/1.1 405 方法不允许
< Accept-Ranges: bytes
< Server: HFS 2.3 beta
* no chunk, no close, no size. Assume close to signal end
<
* Closing connection #0
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
然后 hfs 好像是 post 的 你自己抓包看看
这个不是你代码的问题 是你服务器的问题 如果是IIS请打开 WEBDAV 然后设置web目录可写。。。
那要是测试put方法的话,有没有别的办法?
如果不支持put的话,那通过浏览器上传文件是用什么方法实现的呢?
其实我就是想通过编程的方式实现文件上传,呵呵。
那要是测试put方法的话,有没有别的办法?
如果不支持put的话,那通过浏览器上传文件是用什么方法实现的呢?
其实我就是想通过编程的方式实现文件上传,呵呵。
那要是测试put方法的话,有没有别的办法?
如果不支持put的话,那通过浏览器上传文件是用什么方法实现的呢?
其实我就是想通过编程的方式实现文件上传,呵呵。
多数服务器不支持 PUT 的,很正常啊