github shlinkio/shlink v3.5.0

latest releases: v4.2.0, v4.1.1, v4.1.0...
20 months ago

Changed

  • Nothing

Added

  • #1557 Added support to dynamically redirect to different long URLs based on the visitor's device type.

    For the moment, only android, ios and desktop can have their own specific long URL, and when the visitor cannot be matched against any of them, the regular long URL will be used.

    In the future, more granular device types could be added if appropriate (iOS tablet, android table, tablet, mobile phone, Linux, Mac, Windows, etc).

    In order to match the visitor's device, the User-Agent header is used.

  • #1632 Added amount of bots, non-bots and total visits to the visits summary endpoint.

  • #1633 Added amount of bots, non-bots and total visits to the tag stats endpoint.

  • #1653 Added support for all HTTP methods in short URLs, together with two new redirect status codes, 307 and 308.

    Existing Shlink instances will continue to work the same. However, if you decide to set the redirect status codes as 307 or 308, Shlink will also return a redirect for short URLs even when the request method is different from GET.

    The status 308 is equivalent to 301, and 307 is equivalent to 302. The difference is that the spec requires the client to respect the original HTTP method when performing the redirect. With 301 and 302, some old clients might perform a GET request during the redirect, regardless the original request method.

  • #1662 Added support to provide openswoole-specific config options via env vars prefixed with OPENSWOOLE_.

  • #1389 and #706 Added support for case-insensitive short URLs.

    In order to achieve this, a new env var/config option has been implemented (SHORT_URL_MODE), which allows either strict or loosely.

    Default value is strict, but if loosely is provided, then short URLs will be matched in a case-insensitive way, and new short URLs will be generated with short-codes in lowercase only.

Removed

  • Nothing

Fixed

  • #1639 Fixed 500 error returned when request body is not valid JSON, instead of a proper descriptive error.

Deprecated

  • #1676 Deprecated GET /short-urls/shorten endpoint. Use POST /short-urls to create short URLs instead.
  • #1678 Deprecated validateUrl option on URL creation/edition.

Don't miss a new shlink release

NewReleases is sending notifications on new releases.