Skip to main content
robots.txt in Joomla
# Topics

robots.txt in Joomla

06 July 2026

One tiny text file in your Joomla root, robots.txt, is the first thing most search engines read before they crawl a single page. It tells crawlers which folders to stay out of and where to find your sitemap. Get it right and search engines spend their time on the pages that matter. Get it wrong and you can accidentally hide your whole site from Google, or invite crawlers into folders that waste their time.

This article explains the Joomla robots.txt file from top to bottom. It covers the basics for site owners, the indexing settings for administrators, and the way Joomla serves the file and builds its meta-robots tags for developers.

robots.txt is the sign at your front gate: it tells visiting crawlers where they may and may not go, but it cannot lock any doors.

The goal is simple: help you understand what the shipped file does, how it differs from Joomla's own indexing settings, and how to change both with confidence.

1. The Basics

1.1 What is robots.txt?

The robots.txt file is a plain text file that lives in the root of your website. It follows the Robots Exclusion Protocol, an old and widely respected convention. When a search engine such as Google or Bing visits your site, it asks for https://example.test/robots.txt first, reads the rules, and then decides which paths it is allowed to crawl.

The file answers two questions for a crawler:

  • Which parts of the site should I not crawl?
  • Where is the XML sitemap that lists the pages I should crawl?

1.2 What robots.txt Cannot Do

This is the most misunderstood point, so it comes first. robots.txt is a request, not a lock. Well-behaved crawlers obey it, but it does not stop anyone from reaching a page, and it does not reliably keep a page out of search results.

A Disallow rule asks a crawler not to fetch a page. It does not ask a search engine not to list it. A page that is linked from elsewhere can still appear in results, shown without a description, even while it is disallowed.

To keep a page truly private, you protect it with a login or server-level access rules. To keep a page out of the search index, you use a meta robots tag set to noindex (see section 4). The two tools look similar but do very different jobs.

1.3 Where the File Lives

The file sits in the Joomla web root, next to index.php and configuration.php:

public_html/
   index.php
   configuration.php
   robots.txt          ← the file crawlers read
   htaccess.txt

Unlike htaccess.txt, which ships inactive and must be renamed, Joomla ships robots.txt ready to use. It is already live the moment your site is online. You can confirm it by opening https://your-site.test/robots.txt in a browser.

Back to top

2. The Joomla robots.txt File

Joomla ships a sensible default file. Here is the body that does the work, after the comment block at the top:

User-agent: *
Disallow: /administrator/
Disallow: /api/
Disallow: /bin/
Disallow: /cache/
Disallow: /cli/
Disallow: /components/
Disallow: /includes/
Disallow: /installation/
Disallow: /language/
Disallow: /layouts/
Disallow: /libraries/
Disallow: /logs/
Disallow: /modules/
Disallow: /plugins/
Disallow: /tmp/

2.1 What Each Line Means

  • User-agent: * means the rules below apply to every crawler.
  • Each Disallow line names a folder that crawlers should skip.

The list is made of Joomla's internal folders. None of them contain pages a visitor should land on from a search result. They hold the admin panel (/administrator/), the headless API (/api/), core code (/components/, /libraries/, /modules/, /plugins/), and working folders (/cache/, /tmp/, /logs/). Keeping crawlers out of them saves "crawl budget" for your real content and avoids indexing files that should never be public.

2.2 What the File Does Not Block

Notice what is missing: there is no Disallow: /images/ and no Disallow: /media/. That is on purpose. Search engines need to read your CSS, JavaScript, and images to render and rank a page correctly. Blocking those folders is a classic SEO mistake (see section 12). The default file blocks code folders, not asset folders.

2.3 The Comment Block at the Top

Above the rules, the shipped file carries an important note about subfolder installs:

# If the Joomla site is installed within a folder
# eg www.example.com/joomla/ then the robots.txt file
# MUST be moved to the site root
# eg www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to all of the
# paths.

This matters because crawlers only ever read robots.txt from the domain root. Section 6 explains exactly what to change for a subfolder install.

Back to top

3. Understanding the Directives

The Robots Exclusion Protocol has a small vocabulary. Knowing the handful of directives lets you read and adapt any robots.txt, not just Joomla's.

DirectiveMeaning
User-agent Which crawler the following rules apply to. * means all of them.
Disallow A path the crawler should not fetch. An empty value means "allow everything".
Allow An exception that re-permits a path inside a disallowed folder.
Sitemap The full URL of your XML sitemap. It is global, not tied to a user-agent.
Crawl-delay Seconds to wait between requests. Google ignores it; some other crawlers honour it.

3.1 How Matching Works

Paths are matched from the start of the URL path. Disallow: /tmp/ blocks anything that begins with /tmp/. A bare Disallow: / blocks the entire site, which is almost never what you want on a live site.

3.2 The Allow Exception

You can carve a hole in a broad rule with Allow. Suppose you block a folder but need one file inside it to stay crawlable:

User-agent: *
Disallow: /private/
Allow: /private/public-flyer.pdf

Most modern crawlers read Allow and apply the most specific match. Use it sparingly; a long list of allows and disallows quickly becomes hard to reason about.

3.3 Targeting One Crawler

You can write separate blocks for separate crawlers. Each block starts with its own User-agent line:

User-agent: *
Disallow: /tmp/

User-agent: BadBot
Disallow: /

Here every crawler is kept out of /tmp/, while a specific crawler named BadBot is asked to stay off the site entirely. Remember that a hostile bot will simply ignore the rule, so this is housekeeping for polite crawlers, not a security measure.

3.4 Wildcards and Pattern Matching

The original protocol only matched the start of a path, but Google, Bing, and most major crawlers also support two wildcard characters. They are not part of the old standard, so a few minor crawlers ignore them, but for the engines that matter they are reliable.

SymbolMeaning
* Matches any sequence of characters.
$ Anchors the match to the end of the URL.

This is useful in Joomla for blocking generated or parameter-based URLs that have no SEO value, such as print views or a format switch:

User-agent: *
# Block every URL that ends in a PDF format switch
Disallow: /*?format=pdf$
# Block any URL that contains a print parameter
Disallow: /*?print=
# Block internal search result pages
Disallow: /*?searchword=

Read Disallow: /*?format=pdf$ as "any path (/*), followed by ?format=pdf, ending right there ($)". Use wildcards with care: a pattern that is slightly too broad can block real content. Always test a new pattern in Google Search Console's robots.txt tester before you trust it.

Back to top

4. robots.txt Versus Meta Robots

Joomla gives you two separate ways to influence crawlers, and confusing them causes a lot of indexing problems. They work at different layers and have different effects.

 robots.txtMeta robots tag
Where it lives One file at the site root In the <head> of each page
What it controls Whether a crawler fetches a path Whether a fetched page is indexed or its links followed
Set in Joomla via Editing the text file Global Configuration, menu item, or article
Typical use Keep crawlers out of code folders Keep a specific page out of search results

4.1 The Trap: Disallow Plus Noindex

There is one combination that surprises people. If you Disallow a page in robots.txt and set a noindex meta tag on it, the noindex never works. The reason is logical: a crawler that is told not to fetch the page never reads its HTML, so it never sees the noindex tag.

To remove a page from search results, let crawlers fetch it (do not Disallow it) and add a noindex meta tag. The crawler reads the page, sees the tag, and drops it from the index.

So the rule of thumb is: use robots.txt to manage crawling of whole folders, and use the meta robots tag to manage indexing of individual pages.

Back to top

5. Controlling Indexing Inside Joomla

You rarely edit a single page's meta robots tag by hand. Joomla builds it for you from a setting that cascades through three levels. Each level can override the one above it.

5.1 The Four Choices

At every level the setting offers the same four values, which map directly to the meta tag Joomla writes:

SettingMeaning
index, follow Index this page and follow its links (the normal default).
noindex, follow Do not index this page, but follow its links.
index, nofollow Index this page, but do not follow its links.
noindex, nofollow Do not index this page and do not follow its links.

5.2 The Three Levels (and Who Wins)

  1. Site-wide. System → Global Configuration → Site → Metadata Settings → Robots sets the default for every page.
  2. Per menu item. Open a menu item, go to the Metadata tab, and set Robots. This overrides the site default for that menu item and the pages under it.
  3. Per article (or other item). Open an article, go to the Publishing tab, and set Robots. This is the most specific level and wins over the menu and the site.

The most specific setting that is filled in wins. If an article's Robots is left blank, Joomla falls back to the menu item, then to the global default. Leave the global default on index, follow (the empty value) and only set the others on the few pages that need them, such as a thank-you page or an internal search results page.

5.3 The Empty Default

When the global Robots option is left empty, Joomla writes no robots meta tag at all. Search engines treat the absence of a tag as "index, follow", so the default behaviour is to index normally. You only get an explicit <meta name="robots"> tag once you pick a non-empty value somewhere in the cascade.

Back to top

6. Subfolder Installs

Crawlers only read robots.txt from the domain root, never from a subfolder. If your Joomla site lives at https://example.test/blog/, a crawler still asks for https://example.test/robots.txt, not https://example.test/blog/robots.txt.

The shipped file's own comment block explains the two steps you must take:

  1. Move the file to the real domain root. Copy robots.txt from /blog/ up to the top-level folder so the crawler can find it.
  2. Prefix every path with the folder name. Each Disallow path must include the subfolder, or it points at the wrong place.

For a site in /blog/, the rules change like this:

User-agent: *
Disallow: /blog/administrator/
Disallow: /blog/api/
Disallow: /blog/cache/
Disallow: /blog/tmp/
# ...and so on for every folder...

If you forget the prefix, the rules silently protect nothing, because /administrator/ does not exist at the domain root in a subfolder install.

Back to top

7. Adding a Sitemap Reference

The single most valuable line you can add to the default file is a pointer to your XML sitemap. It helps search engines discover all your pages quickly:

Sitemap: https://example.test/index.php?option=com_osmap&view=xml&id=1

The Sitemap directive takes a full, absolute URL. The exact address depends on the sitemap extension you use, because Joomla core does not generate an XML sitemap by itself. Popular choices are OSMap and JSitemap; each gives you a URL to paste here.

You can list more than one sitemap line if you have several. The directive is global and does not belong to any User-agent block, so place it at the top or bottom of the file:

User-agent: *
Disallow: /administrator/
# ...other Disallow lines...

Sitemap: https://example.test/sitemap.xml

Adding the sitemap to robots.txt does not replace submitting it in Google Search Console, but it is a free, standards-based way to make sure every crawler finds it.

Back to top

8. Under the Hood (Developer View)

8.1 How the File Is Served

There is no PHP behind robots.txt. It is a static file, and the web server delivers it directly. In Joomla's .htaccess, the front-controller rewrite only fires when the request does not match a real file (!-f). Because robots.txt is a real file on disk, Apache serves it straight away and the request never reaches index.php. The same is true on Nginx with the usual try_files rule.

This has a practical consequence: you cannot change robots.txt from the Joomla admin panel. You edit it with FTP, the hosting file manager, or a code editor.

8.2 Where the Meta Robots Tag Is Built

The meta robots cascade from section 5 is real code, not magic. The global value is read and stored as a page parameter in SiteApplication:

// libraries/src/Application/SiteApplication.php (simplified)
$robots = $this->get('robots');
// ...later, after merging menu item params...
$params[$hash]->def('robots', $robots);

The component view then applies it, and lets the item's own metadata override it. In the com_content article view:

// components/com_content/src/View/Article/HtmlView.php (simplified)
if ($this->params->get('robots')) {
    $this->getDocument()->setMetaData('robots', $this->params->get('robots'));
}

// ...then the article's own metadata is applied last, so it wins...
foreach ($this->item->metadata->toArray() as $k => $v) {
    if ($v) {
        $this->getDocument()->setMetaData($k, $v);
    }
}

Because the article's own metadata is written last, the article-level Robots setting overrides the menu and global values. That is exactly the "most specific wins" behaviour you see in the backend.

8.3 The Print View Is Always Noindex

One detail catches developers out. When a page is rendered in Joomla's print view, the article view forces a noindex, nofollow tag regardless of your settings:

if ($this->print) {
    $this->getDocument()->setMetaData('robots', 'noindex, nofollow');
}

This stops the stripped-down print version of a page from competing with the real page in search results. You do not need to configure it; Joomla does it for you.

8.4 The Disallowed /api/ Folder

The default file disallows /api/, the entry point for Joomla's Web Services API. There is no reason for a search engine to crawl your REST endpoints, and the API requires a token anyway. Keeping it out of robots.txt is good hygiene. If you build a public, link-shareable view on top of the API, expose it through a normal front-end menu item, not through the raw /api/ path.

8.5 The HTTP Status Code Matters

Because robots.txt is fetched over HTTP, the status code your server returns changes how crawlers behave. This is easy to overlook and occasionally causes a whole site to stop being crawled.

StatusHow crawlers react
200 OK Read and apply the rules. The normal case.
404 Not Found No file, so crawling is generally allowed everywhere.
403 Forbidden Treated like an error; some crawlers slow or stop crawling.
5xx Server Error Google pauses crawling the whole site until the file recovers.

The lesson: a broken or firewalled robots.txt is worse than a missing one. If maintenance mode or a security plugin starts returning a 503 for every request, including robots.txt, Google reads that as "stop crawling" and visits slow down. Confirm the file returns a clean 200 with a quick request:

curl -I https://example.test/robots.txt

8.6 The X-Robots-Tag Header

The meta robots tag only works for HTML pages, because it lives in the <head>. Files such as PDFs, images, and other downloads have no <head>, so you cannot add a noindex tag to them. For those, the server sends an HTTP header instead:

X-Robots-Tag: noindex

It accepts the same values as the meta tag (noindex, nofollow, and so on) but applies them to any file type. A common use is to keep generated PDFs out of search results. In Apache you scope it by file type:

<FilesMatch "\.pdf$">
    <IfModule mod_headers.c>
        Header set X-Robots-Tag "noindex"
    </IfModule>
</FilesMatch>

Like the meta tag, X-Robots-Tag controls indexing, not crawling. The crawler must be allowed to fetch the file to see the header, so do not also Disallow the file in robots.txt (the same trap as section 4.1). Joomla core does not set this header for you; it is a server-level addition.

Back to top

9. AI Crawlers and robots.txt

A new kind of crawler now reads robots.txt: the bots that AI companies use to gather text for training and for live answers. They follow the same Robots Exclusion Protocol, so you control them with the same User-agent and Disallow rules you already know.

9.1 The Main AI User-Agents

Each company publishes the name of its crawler. The common ones in 2026 are:

User-agentWho runs it
GPTBot OpenAI, for training data.
OAI-SearchBot OpenAI, for its search product.
ClaudeBot Anthropic.
PerplexityBot Perplexity.
Google-Extended Google's separate token for AI training (not normal Search).
Amazonbot Amazon.
Bytespider ByteDance (TikTok).
CCBot Common Crawl, a public dataset many AI models use.

9.2 Allowing or Blocking Them

To ask the AI crawlers to stay off your whole site, add a block per user-agent:

User-agent: GPTBot
Disallow: /

User-agent: ClaudeBot
Disallow: /

User-agent: CCBot
Disallow: /

Two points matter. First, blocking these does not affect your normal Google ranking. Search crawling uses Googlebot; AI training uses the separate Google-Extended token. You can block one and keep the other. Second, compliance is voluntary, exactly as it is for every other crawler. The well-known AI bots honour robots.txt, but a bot that wants your content can ignore it. For real enforcement you need a firewall, a Web Application Firewall, or your CDN's bot rules.

9.3 Should You Block Them?

There is no single right answer. Blocking AI crawlers protects your content from being used in training, which some publishers prefer. Allowing them can send referral traffic from AI search tools and keep your brand present in AI answers. Decide based on your goals, and remember you can allow some and block others.

Back to top

10. robots.txt Behind a CDN

Many Joomla sites sit behind a content delivery network such as Cloudflare, Fastly, or Bunny. The CDN sits between the crawler and your origin server, and it changes how robots.txt is delivered.

10.1 The File Is Cached at the Edge

A CDN caches static files, and robots.txt is static. After you edit the file on your server, the CDN may keep serving the old copy for minutes or hours until its cache expires. On top of that, crawlers cache robots.txt themselves, often for about a day. So a change is rarely instant.

After an important change, purge the CDN cache for robots.txt so the new rules go live at once. In Cloudflare this is a single "Purge by URL" action.

10.2 Watch for Two Sources of Truth

Some CDNs can generate or inject their own robots.txt, or rewrite the one you serve. Cloudflare, for example, can add a managed robots.txt for its bot-management features. If your live file does not match what you uploaded, check the CDN dashboard before you blame Joomla. There should be exactly one place that owns the file.

10.3 Confirm It Still Returns 200

A firewall rule or bot-fight setting at the CDN can accidentally block or challenge the request for robots.txt. As section 8.5 explained, a 403 or 5xx on this file harms crawling. Test the public URL through the CDN, not just on the origin:

curl -I https://example.test/robots.txt

A clean 200 OK with Content-Type: text/plain confirms crawlers can read it.

Back to top

11. SEO and Metadata

A correct robots.txt is quiet but important SEO groundwork. A few principles keep it working for you rather than against you:

  • Spend crawl budget wisely. Blocking code and working folders means crawlers spend their visits on your real content, which helps large sites get indexed faster.
  • Never block assets. Leave /images/, /media/, and template CSS and JavaScript crawlable, or Google may render your pages wrongly and rank them lower.
  • Point to your sitemap. The Sitemap line speeds up discovery of new pages on every crawler that reads it.
  • Use the right tool for the job. Hide whole folders with robots.txt; remove single pages from results with a noindex meta tag set in Joomla.
  • Do not block pages you mark canonical. A rel="canonical" tag tells Google which duplicate to prefer, but Google must crawl the duplicate to read that tag. If robots.txt blocks the duplicate, the canonical is never seen. Use canonical tags for duplicate content and keep those URLs crawlable.
  • Keep one canonical host. Serve a single robots.txt on your canonical domain and 301-redirect the other host, so crawlers never see two conflicting files.

None of this needs a paid SEO extension. It is configuration you set once in the file and in Global Configuration, and it pays off on every crawl.

Back to top

12. Common Mistakes and Pitfalls

12.1 The Accidental Site-Wide Block

Symptom: your whole site vanishes from Google after a redesign or a move from a staging server.

Fix: check for Disallow: / in robots.txt. Staging sites often block everything to stay private, and that file gets copied to production by mistake. Remove the line so crawlers can reach your pages again.

12.2 Blocking CSS, JavaScript, or Images

Symptom: Google Search Console reports that pages cannot be rendered, or rankings drop after you "tidied up" the file.

Fix: remove any Disallow for /images/, /media/, or template asset folders. Crawlers need those files to see the page as a visitor does.

12.3 Expecting robots.txt to Hide a Page

Symptom: a page you disallowed still appears in Google, often as a bare link with no description.

Fix: Disallow stops crawling, not indexing. Remove the Disallow, set the page's Robots to noindex in Joomla, and let the crawler fetch it and see the tag.

12.4 Disallow Plus Noindex Cancel Out

Symptom: you set both a Disallow and a noindex, yet the page refuses to leave the index.

Fix: the crawler never reads the noindex because the Disallow keeps it from fetching the page. Drop the Disallow and keep only the noindex.

12.5 The Subfolder Path Mistake

Symptom: on a subfolder install, the rules seem to protect nothing.

Fix: move the file to the domain root and prefix every path with the folder name, for example Disallow: /blog/administrator/ (see section 6).

12.6 Treating robots.txt as Security

Symptom: you list a secret folder in robots.txt to "hide" it, and then find it being probed.

Fix: never name sensitive paths in a public file; you are advertising them. Protect them with a login or server access rules instead. robots.txt is advice for polite crawlers, not a wall.

12.7 Blocking a Page You Marked Canonical

Symptom: you set a rel="canonical" tag on a duplicate URL, yet Google keeps indexing the duplicate instead of the canonical version.

Fix: the duplicate is blocked in robots.txt, so Google never crawls it and never reads its canonical tag. Remove the Disallow for that URL and let Google fetch it; only then can it honour the canonical.

12.8 A Broken robots.txt Returning an Error

Symptom: crawl rate drops to almost nothing after enabling maintenance mode, a firewall, or a CDN bot rule.

Fix: the request for robots.txt returns a 403 or 5xx, which Google reads as "stop crawling". Make sure robots.txt always returns a clean 200, even during maintenance (see section 8.5).

Back to top

13. Best Practices

If you remember only a few things from this article, remember these:

  • Keep the shipped default; it blocks the right folders and leaves assets crawlable.
  • Add a Sitemap: line pointing to your XML sitemap.
  • Never Disallow CSS, JavaScript, or image folders.
  • Use robots.txt for folders and the Joomla Robots meta setting for single pages.
  • To remove a page from results, use noindex and do not Disallow it.
  • For non-HTML files like PDFs, use the X-Robots-Tag header instead of a meta tag.
  • Keep canonical-tagged duplicate URLs crawlable, or Google cannot read the canonical.
  • On a subfolder install, move the file to the root and prefix every path.
  • Never check Disallow: / into a live site; it is a staging-only setting.
  • Make sure the file always returns a clean 200; a 403 or 5xx stalls crawling.
  • Decide on purpose whether to allow or block AI crawlers, and purge the CDN cache after edits.
  • Do not list secret paths; robots.txt is public and is not security.
  • Test changes in Google Search Console's robots.txt tester before relying on them.
  • Serve one robots.txt on your canonical host and redirect the rest.
Back to top

14. Quick Reference

LOCATION     public_html/robots.txt  (served live, no rename needed)
VIEW IT      https://your-site.test/robots.txt
ALL CRAWLERS User-agent: *
BLOCK FOLDER Disallow: /folder/
ALLOW ALL    Disallow:            (empty value)
BLOCK SITE   Disallow: /          (staging only, never live)
EXCEPTION    Allow: /folder/file.pdf
WILDCARDS    * = any chars, $ = end of URL  (Disallow: /*?print=)
SITEMAP      Sitemap: https://your-site.test/sitemap.xml
META ROBOTS  Global Config → Site → Metadata → Robots
CASCADE      Article > Menu item > Global  (most specific wins)
VALUES       index,follow / noindex,follow / index,nofollow / noindex,nofollow
EMPTY DEFAULT No robots meta tag written = index, follow
HIDE A PAGE  noindex meta tag, do NOT also Disallow it
NON-HTML     X-Robots-Tag: noindex  (header, for PDFs/images)
CANONICAL    Keep duplicate crawlable or its canonical is never read
SUBFOLDER    Move to root + prefix paths: /blog/administrator/
PRINT VIEW   Always noindex, nofollow (forced by Joomla)
HTTP STATUS  Must return 200; 403/5xx stalls crawling
AI CRAWLERS  GPTBot, ClaudeBot, Google-Extended, CCBot (block per UA)
CDN          robots.txt is edge-cached; purge after edits
NOT SECURITY robots.txt is public advice, not an access lock
Back to top

15. Summary

The robots.txt file is small, public, and powerful in the wrong direction: it is far easier to hide your site by accident than to gain much by tuning it. Once you know what it does, it stops being risky:

  • Purpose: it tells crawlers which folders to skip and where the sitemap is. It does not lock pages and does not by itself remove them from search results.
  • The default: Joomla ships a ready-to-use file that blocks code and working folders while leaving your content and assets crawlable.
  • Two tools: use robots.txt for whole folders and the Joomla Robots meta setting for single pages; never disallow a page you want to noindex.
  • The cascade: the Robots meta tag flows from Global Configuration to the menu item to the article, with the most specific setting winning.
  • Beyond the basics: wildcards refine what you block, X-Robots-Tag handles non-HTML files, AI crawlers obey the same rules, and a CDN caches the file at the edge.
  • Subfolders: move the file to the domain root and prefix every path.

If your Joomla pages disappear from Google after a site move, render incorrectly in Search Console, or stubbornly stay in the index when you want them gone, the cause is very often in robots.txt or the Robots meta setting. A careful read of both, and a clear sense of which one to reach for, usually finds the problem fast. It is exactly the kind of quiet foundation work that keeps a Joomla site visible to the right visitors and invisible where it should be.

Back to top
robots.txt in Joomla
Peter Martin
Peter Martin
Joomla Specialist

Peter is a Joomla specialist and a Linux admin for fast, secure and scalable websites.

Frequently Asked Questions

What is the purpose of a robots.txt file in Joomla?

A robots.txt file tells compliant search engine crawlers which parts of your Joomla website they may or may not crawl. It helps manage crawler access but does not secure private content.

Does robots.txt improve SEO?

A well-configured robots.txt file supports SEO by preventing unnecessary crawling of irrelevant pages. However, blocking important content can reduce your website's visibility in search engines.

Can robots.txt prevent pages from appearing in Google?

No. Robots.txt only controls crawling, not indexing. If a blocked page is linked from elsewhere, search engines may still index the URL without accessing its content.

Which folders should not be blocked in Joomla?

Avoid blocking folders or files that contain CSS, JavaScript, images, or other resources needed to render your pages correctly. Search engines need access to these assets to understand your website.

How do AI crawlers use robots.txt?

Many AI crawlers, such as GPTBot and ClaudeBot, check robots.txt before crawling a website. You can explicitly allow or disallow these bots depending on whether you want your content used for AI services.

How can I test whether my robots.txt file is correct?

After updating robots.txt, verify it using your browser, Google Search Console, and server logs. These tools help confirm that important pages remain crawlable while unwanted areas are correctly excluded.