HomeExtensionsScriptsWordPressDocsSupport

ImageHost

Free PHP script to run your own image hosting website. Visitors upload images and get share links and embed codes. Members get albums, an API key and two-factor sign in. You run everything from a separate admin panel.

  • ImageHost icon
    ImageHost
    PHP 8.1+SQLite or MySQLApache / NginxFreeGPL v3Version 1.1.1

    A free and open source (GPL v3) image hosting script with no framework and no dependencies. Upload it, open your domain, and the installer sets up SQLite (zero setup) or MySQL in a minute. Visitors get share links and embed codes, members get albums and an upload API, and you control limits, security, SEO and storage from a separate admin panel.

Features

  • Fast uploads
    Drag and drop, file picker or Ctrl+V paste, three files at a time with progress and retry. Upload from URLs, or scan any web page and pick the images to copy. Works without JavaScript too.
  • Every link format
    Share page, direct link, HTML and BBCode (thumbnail or full size) and Markdown for each image, plus a private delete link for guests.
  • Safe image handling
    File types are detected from the content, never the name. Photos are turned upright and stripped of EXIF and GPS data, thumbnails are made in WebP, and oversized or fake images are refused.
  • Member accounts
    Albums (public or private), search and bulk tools, a public profile that can be made private, and personal API keys with one-click ShareX setup.
  • Account security
    Two-factor sign in with an authenticator app and 8 recovery codes, emailed sign-in codes, new-device alerts, the last 7 sign-ins, and account deletion confirmed by email.
  • Separate admin panel
    Its own address, sign in and session, idle timeout, IP lock and allow list, required 2FA and an activity log. Signing in as a member never gives admin rights.
  • Upload API
    Send images from your own scripts, apps or ShareX with one POST request and an API key. You get back JSON with every link.
  • SEO and sitemaps
    Title format, descriptions, Open Graph and X cards, Google and Bing verification, a robots.txt editor and split sitemaps that never list private images or profiles.
  • Cloudflare R2 offload
    Store images in a Cloudflare R2 bucket and serve them from r2.dev or your own domain. Move existing images in batches.
  • DMCA and moderation
    A public takedown form, notices with status and notes, block removed files from being uploaded again, reports, bans and bulk delete by filters.
  • Built to stay fast
    Indexed queries, cached counts and sitemaps, minified pages, and logs cleared automatically after 72 hours, so the site does not slow down as it grows.
  • One-click updates
    Upload the new ZIP under Admin > Updates. Your code is backed up first and can be restored with one click. Settings, images and the database are kept.

Screenshots

Upload page. Drag and drop, paste with Ctrl+V, add from URLs or grab images from any web page.
Upload results. Share link, direct link, BBCode, HTML and Markdown the moment each image lands, with a private delete link.
Image page. A clean viewer with zoom, size info, ratings and a share box with every link format.
Explore. Public gallery sorted by newest, top rated or most viewed. Private images never appear.
Dark mode. Every public page comes in light and dark, following the visitor's system setting.
Members. Public member profiles. Members who make their profile private are left out.
My images. Members sort, search and bulk-manage their uploads and keep them in public or private albums.
Account security. Two-factor sign in, emailed sign-in codes, new-device alerts, recent sign-ins and the API key.
Tools. Embeddable uploader, upload button, ShareX setup and web page import for other sites.
Admin sign in. The admin area has its own address, sign in, session and optional two-factor code.
Admin dashboard. Totals, a 30-day chart, setup warnings and the latest uploads at a glance.
Images. Search by code, title, owner, IP or storage, then bulk delete, block, offload or export.
Settings. Site name and address, limits, file types, thumbnails, access, mail, ads and more.
Security. Private admin address, idle timeout, IP lock, allow list, 2FA, captcha and HTTPS.
Storage (R2). Offload images to Cloudflare R2 and move existing ones in batches.
SEO. Title format, descriptions, share cards, site verification, sitemaps and robots.txt.
Updates. Check for a newer version, install it from its ZIP, and restore a backup in one click.

How to use

    1. Download the ZIP and upload the imagehost folder to your server (web root or any sub folder).
    2. Make storage/ and uploads/ writable, then open the site in a browser.
    3. The installer checks the server, lets you pick SQLite or MySQL, and creates your main admin account.
    4. Sign in to the admin panel at /admin/login, set your site address, limits and mail, and move the admin to a private address.
    5. Share your site. Visitors upload images and get links instantly.

Why self-hosted?

  • Own your images
    Images stay on your server or your own R2 bucket. No third-party host can delete them, compress them or put ads on them.
  • Your brand, your rules
    Your name, colours, favicon, pages, ads and limits. Light and dark mode included.
  • Light to run
    Plain PHP with SQLite needs no database server, so it runs on cheap shared hosting as well as a VPS.

FAQ

  • Is ImageHost really free?

    Yes. ImageHost is free and open source under the GNU General Public License version 3, for personal and commercial sites. The license adds one term under GPL section 7(b): keep the Developed by Quintaphon Services credit visible in the footer. The full text is in LICENSE.txt in the ZIP.

  • What do I need to run it?

    PHP 8.1 or newer with PDO (SQLite or MySQL), GD and mbstring. cURL, EXIF and zip are recommended. Apache with mod_rewrite, LiteSpeed or Nginx all work.

  • Do I need a MySQL database?

    No. Pick SQLite in the installer and the database is a single file in the storage folder. Choose MySQL or MariaDB for very busy sites.

  • Can I upload images from my own scripts?

    Yes. Every member has an API key under Account settings. Send a POST request with the image and the key to /api/upload and you get JSON back with the share link, direct link and every embed code. The docs have ready examples for cURL, PHP, Python and JavaScript.

  • How do I update to a new version?

    Use Check for a newer version under Admin > Updates, download the new ZIP and upload it on the same page. Your code is backed up first, and database changes run by themselves.

  • Can I store images on Cloudflare R2?

    Yes. Add your bucket details under Admin > Storage, test the connection, and new uploads are offloaded automatically. Existing images can be moved in batches.

  • How do I get help?

    Read the full documentation, or contact us through the support page.

What's new

    • 1.1.1(October 23, 2026)Far fewer session files on the server: guests and search engine crawlers no longer create one on every visit. A guest's form token now lives in a cookie, the math captcha and guest view counts need no session, and scheduled jobs remove idle guest sessions after 2 hours.
    • 1.1.0(October 23, 2026)First public release, free and open source under the GPL v3. Built for PHP 8.1 to 8.5 with SQLite or MySQL: separate admin area with two-factor sign in, member security and recovery codes, captcha per form, DMCA notices, bulk tools, SEO and permalinks, split sitemaps, Cloudflare R2 offload, ZIP updates with backup and restore, and an upload API with ShareX support.