Recommended Free Tools
iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Antihost offers Linux VPS plans with full root access, unlimited traffic on a 1 Gbps port and a 14-day free trial.
You can run several Joomla sites against one memcached daemon, but you should not point them all at one undivided key space. The safe default is to give each site its own memcached instance, port, or Unix socket. Joomla’s documented configuration exposes a host and port, while current Joomla 4 and 5 source does not establish that cache keys are automatically prefixed per site. Without verified namespacing, one site can overwrite another site’s cached values, and a cache flush can affect every site.
What “one memcached server” should mean
Memcached is a networked in-memory cache. “One server” can describe either one daemon with completely shared keys or one physical machine running several isolated memcached endpoints. Those designs have very different failure modes.
| Design | How Joomla connects | Isolation | Recommendation |
|---|---|---|---|
| One endpoint, no per-site namespace | Every site uses the same host and port | None; keys and flush operations are shared | Avoid |
| Separate port per site | Each site receives a distinct port, such as 11211, 11212, or another administrator-assigned port | Strong practical isolation between daemons | Preferred when the host supports multiple instances |
| Separate Unix socket per site | Each site points to its own socket path | Strong local isolation; exact Joomla and host support must be checked | Good option on a single machine when socket paths are supported |
| One endpoint with verified key prefixes | All sites share a port but Joomla demonstrably adds a unique prefix for each installation | Depends entirely on the Joomla version and implementation | Use only after inspecting the exact version’s source or vendor documentation |
A separate endpoint is not a second physical server. You can still use one host, one operating-system service account strategy, and one monitoring plan; the important boundary is that each Joomla installation has an independent key space and can be cleared without deleting another site’s entries.
Why an undivided cache causes trouble
Key collisions
Applications create cache keys from things such as component names, URLs, query results, and language or device variants. If two Joomla installations generate the same key and use the same memcached endpoint, the later write can replace the earlier value. The visible symptom can be stale, incorrect, or cross-site content rather than an obvious connection error.
#1 Best Overall
Flush operations affect every site
A flush directed at a shared endpoint removes entries belonging to all connected sites. A deployment or troubleshooting action for one site can therefore make every other site cold-cache at the same time. A separate daemon, port, or socket gives each site a bounded flush scope.
Joomla namespacing is not established here
Community documentation for other systems recommends a unique prefix when several installations share memcached, but that is analogy, not proof of Joomla behavior. No official Joomla source identified here confirms automatic per-site prefixes for Joomla 4 or 5. Do not infer that $secret, $cache_platformprefix, or another configuration value creates a complete site namespace without checking the code for your installed release.
Check compatibility before changing configuration.php
Identify the PHP extension and its class
The cache-handler name must match the PHP extension actually loaded by the web process:
| PHP extension | PHP class | Joomla handler value used in community examples |
|---|---|---|
| Memcached | Memcached |
memcached |
| Memcache | Memcache |
memcache |
These names are not interchangeable. A reported Joomla 3.8 case produced a “not supported on this platform” error when the selected handler did not match the installed extension.
On a shell where the same PHP build is used by the website, you can check loaded classes with:
Rank #2
php -r "var_dump(class_exists('Memcached'), class_exists('Memcache'));"
A command-line result does not prove that PHP-FPM or the web server uses the same php.ini. Confirm the extension in the web SAPI as well, and ask the host to enable the matching module if neither class is available.
Confirm the Joomla release and configuration property names
Community guides for Joomla 2.5 and 3 show properties named $caching, $cache_handler, $memcached_server_host, and $memcached_server_port. Property names and supported handlers can change, so compare your file with the configuration.php-dist shipped with the exact Joomla version before editing. Keep a backup of configuration.php; a PHP syntax error can take the site offline.
Check the host’s service policy
Managed and shared hosts vary. One hosting guide says memcached is unavailable on non-Turbo shared accounts and uses a Unix-socket path on Turbo accounts, but the provider scope and reliability of that guidance are not established for every host. Treat support, socket paths, and allowed ports as provider-specific facts that must be confirmed with your host.
Recommended setup: isolate each Joomla site
The following procedure keeps one physical machine while giving each site an independent cache endpoint.
1. Assign an endpoint to every site
- List the Joomla sites that will use memcached.
- Choose a distinct TCP port for each site, or obtain a distinct Unix-socket path if your host provides socket-based memcached.
- Record the mapping in your operations notes—for example, Site A to port 11211 and Site B to port 11212. The numbers are examples; use ports permitted by your operating system and hosting plan.
- Ensure the daemon instances bind only to the interfaces required by the sites. For sites on the same machine, a loopback address or local socket limits unnecessary network exposure.
2. Verify the endpoint before involving Joomla
Ask the administrator or host to confirm that each endpoint is listening and that the web server’s user can reach it. Test one endpoint at a time. If a socket is used, verify both the path and filesystem permissions. Do not proceed on the assumption that a socket path accepted by the host is also accepted by your Joomla release; the Joomla cache adapter must support the format.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →3. Select the matching cache handler
Use memcached only when the Memcached class is available, and use memcache only when the Memcache class is available. If your version’s administrator interface offers a cache-handler selector, its value must agree with the PHP module; otherwise edit the configuration file using the spelling expected by that release.
4. Edit each site’s configuration.php
A pattern used by older Joomla community guides is:
public $caching = '2';
public $cache_handler = 'memcached';
public $memcached_server_host = '127.0.0.1';
public $memcached_server_port = '11211';
For a site using the Memcache extension, the handler would be 'memcache' instead. Replace the host and port with that site’s assigned endpoint. If your host requires a Unix socket, use the socket value and property format documented for your Joomla version and hosting environment; do not copy a TCP example unchanged.
The value '2' is the progressive-caching setting shown in the community examples. Use the caching choices exposed by your installed Joomla release if they differ. Do not copy properties that are absent from your current distribution without checking the version documentation.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problems5. Clear only the site’s old cache
In the Joomla administrator, open the cache-maintenance screen—typically System → Maintenance → Clear Cache; older releases may label it System → Clear Cache. Clear the site after saving its configuration so stale entries from the previous backend are not mistaken for new memcached data. If the endpoint is shared, a flush from one site can clear other sites; this is another reason to migrate to separate endpoints first.
Rank #4
6. Confirm reads and writes
Load the public site twice, checking that the first request can populate the cache and a subsequent request remains error-free. Review the Joomla error log and the PHP web-server log for handler, connection, or permission errors. Test logged-in and logged-out views separately if your site varies output by session or access level. A successful page load alone does not prove that the intended memcached endpoint is being used, so verify the configured host, port, and PHP module in the runtime environment.
7. Repeat with a second site
Configure the next Joomla installation with its own endpoint and repeat the clear-and-verify cycle. Keep the host and port mapping under change control so a later deployment does not accidentally point two sites at the same daemon.
When a genuinely shared endpoint is acceptable
Use one port for multiple Joomla sites only when you have verified, for the exact Joomla version and cache adapter in production, that every cache key is isolated by site. Verification should be based on Joomla source or authoritative vendor documentation, not on the fact that the sites appear to work during a short test.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
A practical verification checklist
- Identify the Joomla minor version and the PHP cache adapter in use.
- Inspect the adapter and cache classes for the code that constructs keys.
- Establish what value differentiates two installations: a documented prefix, installation identifier, or another guaranteed namespace.
- Confirm that the namespace is applied to every cache group used by the site, not only page output.
- Test two sites with deliberately similar URLs, component names, languages, and device variants.
- Perform a cache clear for one site and verify that the other site remains warm and correct.
If any item is unknown, treat the endpoint as unisolated and use separate ports or sockets. The absence of a documented prefix is not evidence that Joomla derives one from $secret or $cache_platformprefix. A Polish configuration guide lists those settings and describes separate desktop and mobile cache behavior, but it does not establish how they participate in a site-wide key hash or which Joomla version it targets.
Do not assume memcached is a supported session backend
Page caching and session storage are separate decisions. A 2014-era community forum discussion describes changing a session handler to 'memcache' and adding a memcache_settings option, but that advice is for a much older Joomla generation and has not been verified here for Joomla 4 or 5.
Best Value
Unless the documentation for your exact release explicitly supports the selected session handler, leave sessions on the supported backend and configure memcached for Joomla’s cache only. Moving sessions without a tested recovery path can log out every user or prevent authentication after a cache restart. If you must evaluate memcached sessions, test login, logout, session expiry, administrator access, and failover on a staging copy before changing production.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Operations for several isolated Joomla caches
Capacity and eviction
Each memcached instance has its own memory allocation and eviction behavior. Allocate capacity deliberately rather than assuming that one large pool will automatically give every site fair space. Record which site owns which endpoint so an eviction alert can be associated with the correct application.
Deployments and cache clears
Clear the endpoint belonging to the site being deployed. Never run a broad flush against a shared endpoint merely because one site changed. With separate ports or sockets, the blast radius is limited by design.
Monitoring
Monitor endpoint availability, connection failures, evictions, and memory pressure per instance. Joomla logs should be correlated with the corresponding memcached endpoint; otherwise a problem on one site can be misdiagnosed as a Joomla-wide failure.
Backups and expectations
Memcached is disposable cache, not durable storage. Your database, uploaded files, and Joomla configuration still require their normal backups. A daemon restart should result in a cold cache and slower first requests, not data loss, provided the site does not rely on memcached for an unsupported session configuration.
Troubleshooting common failures
| Symptom | Likely cause | Action |
|---|---|---|
| “Not supported on this platform” or a handler initialization error | The configured handler does not match the loaded PHP class, or the extension is missing from the web SAPI | Check Memcached versus Memcache, verify the web PHP configuration, and use the handler spelling required by the Joomla release |
| Connection refused or timeout | Wrong port, stopped daemon, firewall rule, or an incorrect socket path | Confirm the endpoint mapping, service status, bind address, and socket permissions with the host or system administrator |
| Pages remain uncached | Caching is disabled, the configuration was not loaded, or the selected adapter cannot initialize | Check the site’s $caching value, review logs, clear the old cache, and confirm that the web process sees the extension |
| One site displays another site’s content or inconsistent values | Two installations share an unprefixed key space | Disable memcached for the affected sites or move them to separate endpoints immediately; investigate and clear only the dedicated endpoint once isolation is in place |
| Clearing one site logs out users or empties other sites’ caches | The sites share an endpoint, and the flush operation is global to that endpoint | Stop using the shared flush path and assign a separate port or socket per site |
| Works in CLI tests but fails through Joomla | CLI PHP and web-server PHP load different extensions or configuration files | Check the PHP-FPM/Apache environment used by the site, not only the command-line binary |
Security and change-control precautions
- Keep memcached reachable only from the interfaces and hosts that need it; do not expose an unauthenticated cache service to the public internet.
- Use filesystem permissions that allow the Joomla web user to reach its assigned Unix socket, but do not make the socket broadly writable.
- Document every site-to-endpoint assignment and review it after migrations, cloning, or staging-to-production copies.
- When cloning a Joomla site, assign a new endpoint before enabling caching on the clone. A clone that retains the production endpoint can collide with the live site.
- Test cache clears and rollback procedures on a staging installation so an operator knows exactly which endpoint is affected.
Decision guide
| Your situation | Choose |
|---|---|
| You control the server and can run multiple daemons | One memcached instance per Joomla site, using separate ports or sockets |
| Your host offers only one managed endpoint | Ask whether Joomla key namespacing is documented for your exact version; otherwise disable memcached for some sites or move to hosting that provides isolation |
| You are on a shared account with unclear support | Confirm whether memcached is available on your plan and whether the host requires a socket; do not rely on a generic TCP example |
| You want memcached for sessions | Use it only when the exact Joomla release documents and supports that session handler; otherwise keep the supported session backend |
| You cannot verify Joomla’s key construction | Do not share the endpoint; isolate by port or socket |
Bottom line
Running several Joomla sites on one physical memcached server is practical when each site receives an isolated daemon, port, or Unix socket. Configure the correct PHP handler, verify the property names for your Joomla release, clear and test each site independently, and treat sessions as a separate compatibility question. A single unprefixed endpoint is an avoidable collision and cache-flush risk; use it only when per-site namespacing is proven for the exact Joomla version in production.
Free tools Windows power users keep installed
One-click scans. No signup required.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

