- Compatible XF versions
- 2.2
- 2.3
A collection of improvements to XF's attachment system.
Support for SVG attachments to be displayable as normal images.
Nginx X-Accel-Redirect (OPTIONAL)
For example, XenForo is accessible from: /forum rather than then the webroot.
The following must be added to config.php:
Code:
$config['internalDataUrl'] = '/forum/internal_data';
Something similar to the nginx config may be required in your webserver:
Code:
location ^~ /forum/internal_data {<br> internal;<br> add_header Etag $upstream_http_etag;<br> add_header X-Frame-Options SAMEORIGIN;<br> add_header X-Content-Type-Options nosniff;<br> alias /path/to/internal_data;<br>}
To ensure you match how XenForo serves files, add the following headers into your website config for the internal_data folder:
Code:
add_header Etag $upstream_http_etag;<br> add_header X-Frame-Options SAMEORIGIN;<br> add_header X-Content-Type-Options nosniff;
New Permissions
Add 'svg' file extension to the list of supported to allow svg files to be uploaded
- Byte-range support for resumable downloads
- Primarily designed for partial content requests for streaming videos, but will work with any file
- Dependant on the filesystem /internal_data being local, as the remote file system APIs do not easily support this feature
- Improve drag&drop editor support.
- Stock XenForo/Froala uses "move" which can result in unexpected content deletion.
- Tint the active editor's boarder when dragging items over it, and show a file upload symbol over it.
- Option to strip jpeg EXIF data
- SVG support
- Nginx's X-Accel-Redirect
- New Permissions for forum/conversations (Respects global attachment size & count limits):
- Attachment Size (kb).
- Maximum Attachment Count.
- Adds support for video stream via partial content requests
Support for SVG attachments to be displayable as normal images.
Nginx X-Accel-Redirect (OPTIONAL)
- Enables the use of Nginx's X-Accel-Redirect header feature for attachment serving.
- This permits XenForo to-do validation and authentication, and offload the actual file serving to Nginx. This feature is not particularly well documented, but some info found here.
For example, XenForo is accessible from: /forum rather than then the webroot.
The following must be added to config.php:
Code:
$config['internalDataUrl'] = '/forum/internal_data';
Something similar to the nginx config may be required in your webserver:
Code:
location ^~ /forum/internal_data {<br> internal;<br> add_header Etag $upstream_http_etag;<br> add_header X-Frame-Options SAMEORIGIN;<br> add_header X-Content-Type-Options nosniff;<br> alias /path/to/internal_data;<br>}
To ensure you match how XenForo serves files, add the following headers into your website config for the internal_data folder:
Code:
add_header Etag $upstream_http_etag;<br> add_header X-Frame-Options SAMEORIGIN;<br> add_header X-Content-Type-Options nosniff;
New Permissions
- Permits per-forum or conversation attachment size and count limits.
- Respects the global forum wide attachment size/count limits, with per-usergroup settings allowing smaller values.
- Due to how XF integer permissions work, 'unlimited' or '0' evaluate as no permission being set.
Add 'svg' file extension to the list of supported to allow svg files to be uploaded