Phase 2 of CloudLinux Isolates


In January, we launched the beta of Per-Site CageFS Isolation as the first phase of our CloudLinux Isolates project, introducing file system isolation between websites within the same hosting account.

Today, we’re delivering Phase 2 with two significant additions: Per-Site PHP Selector, which lets each isolated website run its own PHP version and extensions, and a new self-service activation model that gives hosting providers granular control over who can use Isolates and lets end users manage isolation for their own domains.

Per-Site PHP Selector

Until now, all websites under a single hosting account shared the same PHP version and extension configuration set through CloudLinux PHP Selector. If one site required PHP 8.2 with imagick and another needed PHP 8.3 with redis, the only option was to choose a single configuration for the entire account, or move one site to a separate account. 

This is a common friction point in various environments:

  • Shared hosting: A customer’s primary domain runs a legacy application on PHP 7.4, while an addon domain needs PHP 8.3 for a modern storefront.
  • VPS: An agency manages several client sites under one account, each built with different PHP requirements.
  • Staging: A developer needs to test a PHP version upgrade on staging without changing the production site’s configuration.

Per-Site PHP Selector removes this constraint. Each isolated website gets its own independent PHP configuration:

  • Individual PHP versions per site. Set PHP 7.4 for a legacy application and PHP 8.3 for a modern one.
  • Independent extension management. Enable or disable PHP extensions on a per-site basis without affecting other websites.
  • Automatic inheritance. When isolation is enabled for a domain, it inherits the user’s current PHP version and extension settings. Further changes to per-user settings are independent from per-site settings.

Per-Site PHP Selector is automatically initialized when isolation is enabled for a domain. No separate activation step is needed. The selectorctl –domain commands become available once a domain is isolated.

Setting PHP Version for an Isolated Domain

Use selectorctl with the new –domain option:

selectorctl --set-user-current 8.2 --domain When running as root, add –user to specify the account:

selectorctl --set-user-current 8.2 --domain --user

Managing Extensions per Domain

selectorctl --enable-user-extensions redis,imagick --domain selectorctl --disable-user-extensions imagick --domain  

Self-Service Activation and Access Control

CloudLinux Isolates now use a two-step activation model:

  1. Server administrator allows the feature for users — this grants the right to use isolation but does not enable it on any domain.
  2. User enables isolation for specific domains.

This model introduces two capabilities that were not available in Phase 1: user self-service and per-user access control.

User Self-Service

In Phase 1, only server administrators could enable or disable isolation. End users can now manage their own domains directly:

cagefsctl-user site-isolation-enable --domain [,,...]cagefsctl-user site-isolation-disable --domain [,,...]

This means hosting providers can offer website isolation as a self-service feature, reducing support overhead.

Per-User Access Control

Server administrators now control which users can access Isolates:

cagefsctl --site-isolation-allow-all
cagefsctl --site-isolation-allow
cagefsctl --site-isolation-deny
cagefsctl --site-isolation-deny-all
All allow / deny commands require root. They grant or revoke the right to use isolation, but they do not enable isolation on any domain.

This gives hosting providers the flexibility to include Isolates in specific hosting plans or offer it as a premium add-on, controlling exactly which customers have access.

Changes for Phase 1 Beta Users

Atomic Enable/Disable

In Phase 1, –site-isolation-enable only activated CageFS file system isolation for a domain. Starting with this release, it is an atomic action that enables both components at once:

The same applies to –site-isolation-disable. It removes all components in a single step, and the domain returns to shared per-user settings.

Command Renames

Previous Command (Phase 1)
New Command
cagefsctl –site-isolation-allowcagefsctl –site-isolation-allow-all
cagefsctl –site-isolation-denycagefsctl –site-isolation-deny-all

The –site-isolation-allow and –site-isolation-deny commands now operate at the per-user level.

Example: Isolating a Domain with Custom PHP

1. Root allows the feature (one-time):

cagefsctl --site-isolation-allow-all

2. User enables isolation for the domain:

cagefsctl-user site-isolation-enable --domain shop.example.com

The domain is now isolated. CageFS and PHP Selector are active. PHP version and extensions are inherited from the user’s account-level settings.

3. User sets the desired PHP version:

selectorctl --set-user-current 8.2 --domain

4. User enables needed extensions:

selectorctl --enable-user-extensions redis,imagick --domain Done. The domain now has its own PHP 8.2 with redis and imagick, independent from other domains on the same account.

Get Started Today

Update the required packages from the testing repository:

yum update lvemanager cagefs lve-stats lve-utils --enablerepo=cloudlinux-updates-testing

Minimum Package Versions

PackageMinimum Version
cagefs7.6.30-1
lve-utils6.6.27-1
lve-stats4.2.14-2
lvemanager7.11.33-1

For compatible PHP handlers and the full command reference, visit the documentation.

Project Roadmap

  1. CageFS per site: file system isolation between websites Released
  2. PHP Selector per site: individual PHP versions and extensions per website ← current release
  3. LVE per site: individual resource limits for each website

We invite you to start testing and share your feedback, helping us refine this feature. If you run into any technical issues, please open a ticket with our support team.

Next up: Phase 3 will introduce per-site LVE resource limits, giving each isolated website its own CPU, memory, and I/O allocation.





💸 Affordable Cloud Servers in Argentina! 🚀

At Full Tech Solutions, we offer Affordable Cloud Servers with high performance and advanced security, perfect for entrepreneurs, businesses, and developers looking for power at a budget-friendly price.

💰 Competitive Pricing: Power and flexibility without breaking the bank.
High Performance: Speed and stability for your applications.
🔒 Advanced Security: Protect your data with cutting-edge technology.
📞 24/7 Support: Our experts are ready to assist you anytime.

Don’t compromise quality for cost. Choose Full Tech Solutions and get the best affordable cloud servers in Argentina.

🌐 Scale your project with performance and savings!

Source Link

Write a Comment

Leave a Comment

Your email address will not be published. Required fields are marked *