Eu configurei no meu servidor Linux (SLES11) com o IHS Webserver com WebDAV ativado. Um upload de arquivo via curl
é bem-sucedido usando um URL como este:
$ curl --insecure --upload-file testfile.txt \
https://<URL>.com/upload/hro/ -u hro:$HRO_WEBDAV_PASSWORD
Como resultado desta saída:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>201 Created</title>
</head><body>
<h1>Created</h1>
<p>Resource /upload/hro/testfile.txt has been created.</p>
<hr />
<address>IBM_HTTP_Server Server at <URL> Port 443</address>
Se eu tentar isso com "localhost" em vez do URL, isso não funcionou. Eu recebo um erro SSL:
$ curl --insecure --upload-file testfile.txt \
https://localhost/upload/hro/ -u hro:$HRO_WEBDAV_PASSWORD
Resultando nisso:
curl: (51) SSL peer certificate or SSH remote key was not OK
Isso é coerente porque o certificado é assinado para o URL e não para "localhost". Mas eu usei a opção --insecure
e eu pretendi isso através do uso desta opção para ignorar esta falha.
localhost
para curl
?