微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Apache WebDAV接受POST作为新资源上的PUT

如何解决Apache WebDAV接受POST作为新资源上的PUT

我有一项服务正在发布到Apache WebDAV端点but POST is not a standard implemented method and on WebDAV

最终目标是使文件通过POST上传,以创建/覆盖与PUT方法当前工作方式完全相同的资源。就像服务执行PUT时一样,文件已成功创建,但是在POST上,仅当文件已存在时才起作用。

例如: 成功对新资源进行PUT

➜  ~ curl -X PUT -k  -F 'data=@test_file_upload.txt https://endpoint.tld/put_test.txt
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>201 Created</title>
</head><body>
<h1>Created</h1>
<p>Resource /put_test.txt has been created.</p>
</body></html>

在新资源上发布POST失败

➜  ~ curl -X POST -k  -F 'data=@test_file_upload.txt' https://endpoint.tld/post_test.txt
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /post_test.txt was not found on this server.</p>
</body></html>

我已经尝试过Apache Rewrite,但是无法更改方法

我目前正在尝试使用Wsgi和POST上的代理请求来实现python3 Flask脚本;但这变得非常繁琐和复杂。

是否可以使用mod_perl编写某些脚本而不扩展到代理请求?

我如何利用最低的摩擦解决方案来实现这一目标?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。