Documentation

Linsei manual

How to download, install, configure and use your shortener, step by step and section by section.

1. What Linsei is

Linsei is a self-hosted URL shortener: you install it on your server and, from a panel, create short links, customize them and measure every click. Your data never leaves your hosting.

It is lightweight (PHP with MySQL or SQLite) and grows with you: multiple users with roles, statistics, languages, API and add-ons.

2. Requirements

  • PHP 8.0 or higher with PDO.
  • MySQL/MariaDB (recommended) or SQLite (no setup).
  • Apache (with mod_rewrite) or Nginx.
  • FTP or file-manager access.
No MySQL? Pick SQLite in the installer: it works with zero configuration.

3. Download

  1. Click Download Linsei (.zip).
  2. Unzip it: you'll see index.php and the app/, assets/, plugins/ and data/ folders.

4. Installation

No console, no commands:

  1. Upload everything by FTP to the public folder (e.g. public_html).
  2. Open your site in the browser: the installer appears.
  3. Step 1: requirements. Step 2: database (MySQL or SQLite). Step 3: admin user.
  4. Linsei creates config.php and the tables by itself.
When done, set config.php to read-only and use HTTPS.

5. Panel access

Go to https://tudominio.com/admin with your username and password. You manage everything from there; to leave, use Log out.

6. The home panel

On entering you see a summary: total links, clicks, today's clicks and active links, with a chart of recent days. The «+ New link» button creates one in seconds. The sidebar takes you to the rest.

7. Create and customize links

Click «+ New link» and fill in:

  • Target URL (required).
  • Code/slug: automatic if left empty, or your own (yourdomain.com/promo).
  • Prefixes per campaign (blog-my-link).
  • Title prefix to classify.
  • Update if it exists: reuse a slug without duplicating.

On saving, copy the short link. The list shows the creation date and lets you sort by column (target, clicks, date, status), search and select several for bulk actions: export, activate, deactivate or delete. You can also edit, copy or delete each link.

8. Expiry and limits

  • Expiry date: stops redirecting after that date.
  • Max clicks: deactivates itself when the limit is reached.

Ideal for temporary promotions or single-use links.

9. Statistics

Each link has its statistics page, with everything you need:

  • Total clicks and by period (day, week, month, year), with unique clicks.
  • Visitor country (geolocation is built in, with no setup), device, browser and operating system.
  • Traffic sources (where the clicks come from) and a breakdown by hour and day of week.
  • Trend chart and link comparison.

The admin sees everything; each manager, their own, with a ranking of their most-visited links.

10. Users and roles

As an admin, under Managers you create accounts (with their email) and enable or disable them. If a manager forgets their password, they can recover it by email or the admin can change it on the spot. Two roles:

RoleWhat it can do
AdministratorFull control: all links and stats, users, settings and updates.
ManagerOnly their own links and stats.

Each manager works in isolation: several teams share one install without clashing.

Actions on a manager:

  • Enable/disable: a disabled manager can't log in, but their links keep working and their stats are kept. It's reversible.
  • Change recovery email or change password: update their access details on the spot.
  • Delete: when you delete a manager, Linsei asks what to do with their links: reassign them to another manager (links and stats are kept) or delete them (their URLs stop working; irreversible). If you only want to block access, disable them instead.
Email recovery needs an SMTP server, which you set up in Settings.

11. Export to CSV

From the list or the statistics you can export to CSV (Excel and Google Sheets) for reports or backups, with filters by date and manager.

12. Panel language

The panel is in 8 languages: Spanish, English, French, Portuguese, German, Italian, Dutch and Polish. Switch with the header selector; your choice is remembered. From Settings → Languages you enable/disable languages and upload a new one (a translated .php). You can also drop it by FTP in data/lang/ (safe from updates).

13. The API

Create links from other programs. Each user has their token (in their profile). Example:

curl -X POST https://tudominio.com/api/links \ -H "Authorization: Bearer TU_TOKEN" \ -H "Content-Type: application/json" \ -d '{"url":"https://ejemplo.com/pagina-larga","slug":"promo"}'

The response includes the short link.

14. Add-ons

Linsei extends with add-ons without touching the core. Three ways to install them:

  • From Add-ons in the panel, install the official ones in one click.
  • Click «Upload add-on» to upload your own .zip.
  • Or copy its folder into plugins/ by FTP.

Want to build your own? They hook in with hooks (actions and filters). There's a full guide with an example.

15. Security

  • Passwords with bcrypt and native sessions.
  • CSRF protection on every form.
  • Per-user activity log.
  • Core files protected from direct access.

Always use HTTPS and keep config.php read-only.

16. Updating

Linsei updates in one click. In Settings → Update Linsei you see your installed version and, if there's a new one, an «Update to the latest version» button. Linsei downloads the core, makes a backup and replaces only the program files.

Updating never touches your add-ons, your data or your config.php: your links, stats and settings are kept, and if anything fails it restores the backup automatically.

You can also update by hand by re-uploading the package files (without deleting config.php or data/), but with the button there's no need.

17. Help and support

Inside the panel there is a Help page (/admin/ayuda). Questions or bugs? Write to us from contact.