Fix Magento 2.4.8 Composer/Vendor Installation Issue
Budget: $30 – $250 AUD
We have a Magento 2.4.8 installation on Ubuntu 24 with Apache 2.4. The vendor directory has missing files from an incomplete Magento 1 to Magento 2 migration. This causes setup:di:compile to fail partially and the site crashes intermittently.
Server details:
Ubuntu 24, Apache 2.4, Magento 2.4.8
IP: 154.26.154.143
Theme: Aellon/tech (child of Codazon)
The specific problem:
The directory /var/www/html/vendor/magento/framework/MessageQueue/ is incomplete. The Publisher/Config/CompositeReader interceptor never generates during setup:di:compile, causing this error at runtime:
Class "Magento\Framework\MessageQueue\Publisher\Config\CompositeReader\Interceptor"
does not exist
What we have already tried:
composer install --no-dev — hung for 40+ minutes, was killed
composer install --no-cache — completed but said "Nothing to install, update or remove" — did not restore missing files
composer reinstall magento/framework — removed and reinstalled the package but MessageQueue directory was not restored
composer update magento/framework — hung and was killed
Downloaded Magento 2.4.8 tarball from GitHub, extracted MessageQueue directory manually (233 files restored) — files are present but Publisher interceptor still not generating during compile
Downloaded individual CompositeReader.php from GitHub — did not resolve
Multiple runs of setup:di:compile with php -d memory_limit=2G — compile completes without errors but Publisher interceptor never generates
Current state:
Site is UP and working
Checkout, eWay and PayPal payments working
setup:di:compile runs without errors but is incomplete
MessageQueue directory now has 233 files (restored from GitHub tarball)
Publisher/Config/CompositeReader interceptor still missing from generated/code
Custom module MTBlades_KlaviyoEvents is disabled — cannot be enabled until compile is stable
What needs to be fixed:
Identify why setup:di:compile is not generating the Publisher/Config/CompositeReader interceptor despite source files being present
Fix the underlying composer/vendor issue so compile completes fully in a single pass
Verify compile is stable by running it 3 times consecutively with no missing interceptors
Once compile is stable, enable custom module MTBlades_KlaviyoEvents and verify it compiles cleanly
Set up a staging environment that mirrors the live site for safe future testing
Important notes:
Do NOT run composer install as root without using COMPOSER_ALLOW_SUPERUSER=1
All Magento CLI commands must run as www-data: cd /var/www/html && sudo -u www-data php bin/magento [command]
A full Contabo server snapshot exists as backup dated May 6 2026
Do NOT enable MTBlades_KlaviyoEvents module until compile is verified stable
Do NOT touch eWay or PayPal configuration
Skills required:
Magento 2 (expert level)
Linux/Ubuntu server administration
Composer and PHP dependency management
Experience with Magento 1 to Magento 2 migrations
Server details:
Ubuntu 24, Apache 2.4, Magento 2.4.8
IP: 154.26.154.143
Theme: Aellon/tech (child of Codazon)
The specific problem:
The directory /var/www/html/vendor/magento/framework/MessageQueue/ is incomplete. The Publisher/Config/CompositeReader interceptor never generates during setup:di:compile, causing this error at runtime:
Class "Magento\Framework\MessageQueue\Publisher\Config\CompositeReader\Interceptor"
does not exist
What we have already tried:
composer install --no-dev — hung for 40+ minutes, was killed
composer install --no-cache — completed but said "Nothing to install, update or remove" — did not restore missing files
composer reinstall magento/framework — removed and reinstalled the package but MessageQueue directory was not restored
composer update magento/framework — hung and was killed
Downloaded Magento 2.4.8 tarball from GitHub, extracted MessageQueue directory manually (233 files restored) — files are present but Publisher interceptor still not generating during compile
Downloaded individual CompositeReader.php from GitHub — did not resolve
Multiple runs of setup:di:compile with php -d memory_limit=2G — compile completes without errors but Publisher interceptor never generates
Current state:
Site is UP and working
Checkout, eWay and PayPal payments working
setup:di:compile runs without errors but is incomplete
MessageQueue directory now has 233 files (restored from GitHub tarball)
Publisher/Config/CompositeReader interceptor still missing from generated/code
Custom module MTBlades_KlaviyoEvents is disabled — cannot be enabled until compile is stable
What needs to be fixed:
Identify why setup:di:compile is not generating the Publisher/Config/CompositeReader interceptor despite source files being present
Fix the underlying composer/vendor issue so compile completes fully in a single pass
Verify compile is stable by running it 3 times consecutively with no missing interceptors
Once compile is stable, enable custom module MTBlades_KlaviyoEvents and verify it compiles cleanly
Set up a staging environment that mirrors the live site for safe future testing
Important notes:
Do NOT run composer install as root without using COMPOSER_ALLOW_SUPERUSER=1
All Magento CLI commands must run as www-data: cd /var/www/html && sudo -u www-data php bin/magento [command]
A full Contabo server snapshot exists as backup dated May 6 2026
Do NOT enable MTBlades_KlaviyoEvents module until compile is verified stable
Do NOT touch eWay or PayPal configuration
Skills required:
Magento 2 (expert level)
Linux/Ubuntu server administration
Composer and PHP dependency management
Experience with Magento 1 to Magento 2 migrations
Related categories:
PHP
Linux
Magento
Apache
Debugging
Ubuntu
Web Development
Magento 2
Database Management
Performance Tuning