Noindex Redirect (Statamic Addon)
Disable indexing (noindex, nofollow) for your Statamic site and optionally redirect all frontend requests to another domain β managed from a Control Panel Utility.
Requirements
- PHP
^8.2 - Statamic
^5.0(Statamic^6.0supported)
Installation
composer require emran-alhaddad/noindex-redirect
Control Panel Utility
Go to Control Panel β Utilities β Noindex Redirect.
Settings are stored in storage/app/noindex-redirect/settings.json and will override config/env values until you click Reset to config.
Configuration (optional)
Publish the config file:
php artisan vendor:publish --tag=noindex-redirect-config
Config path:
config/noindex-redirect.php
Environment variables:
NOINDEX_REDIRECT_DISABLE_INDEXING=trueNOINDEX_REDIRECT_ENABLE_REDIRECT=falseNOINDEX_REDIRECT_REDIRECT_URL=https://example.comNOINDEX_REDIRECT_MANAGE_PUBLIC_ROBOTS_TXT=true
What it does
Disable Indexing
When enabled, the addon:
- Adds
X-Robots-Tag: noindex, nofollowto frontend responses (excludes CP + GraphQL routes). - Injects
<meta name="robots" content="noindex, nofollow">into the HTML<head>fortext/htmlresponses. - Covers normal frontend pages and frontend 404/unmatched responses.
- Optionally manages
public/robots.txt(see below). - Still works even if Statamic frontend routes are disabled in
config/statamic/routes.php.
robots.txt behavior
Some servers (including local dev setups) will serve public/robots.txt directly and bypass Laravel routes.
If NOINDEX_REDIRECT_MANAGE_PUBLIC_ROBOTS_TXT=true, the addon will:
- Write a managed
public/robots.txtwhen indexing is disabled (Disallow: /). - Back up any existing
public/robots.txttostorage/app/noindex-redirect/robots.backup.txtbefore overriding it. - Restore the backup when indexing is re-enabled.
If the public directory is not writable, robots.txt syncing is skipped.
Redirect
When Enable Redirect is enabled and a redirect_url is set, all frontend GET/HEAD requests will be redirected (301) to the configured URL (path + query preserved).
Control Panel, !/ actions (including !/forms), and GraphQL routes are excluded.
License
MIT. See LICENSE.