view mod_http_upload/README.markdown @ 2193:40824a38d505

mod_http_upload: Return nil if no upload slot is found (should prevent conflicts between multiple instances on the same path)
author Kim Alvefur <zash@zash.se>
date Tue, 31 May 2016 17:24:59 +0200
parents 40056a27f394
children e276ed33bc1a
line wrap: on
line source

---
labels: Stage-Alpha
description: HTTP File Upload
...

Introduction
============

This module implements [XEP-0363], which lets clients upload files over
HTTP.

Configuration
=============

mod\_http\_upload relies on Prosodys HTTP server and mod\_http for
serving HTTP requests. See [Prosodys HTTP server
documentation](https://prosody.im/doc/http) for information about how to
configure ports, HTTP Host names etc.

The module can either be configured as a component or added to an
existing host or component. Possible configuration variants are as
follows:

Component
---------

You can configure it as a standalone component:

    Component "upload.example.org" "http_upload"

Existing component
------------------

Or add it to an existing component:

    Component "proxy.example.org" "proxy65"
    modules_enabled = {
      "http_upload";
    }

On VirtualHosts
---------------

Or load it directly on hosts:

    -- In the Global section or under a specific VirtualHosts line
    modules_enabled = {
      -- other modules
      "http_upload";
    }

Limits
------

A maximum file size can be set by:

``` {.lua}
http_upload_file_size_limit = 123 -- bytes
```

Default is 1MB (1024*1024).

Path
----

By default, uploaded files are put in a sub-directory of the default
Prosody storage path (usually `/var/lib/prosody`). This can be changed:

``` {.lua}
http_upload_path = "/path/to/uploded/files"
```

Compatibility
=============

Works with Prosody 0.9.x and later.