Website Vidya
DeploymentStep-by-Step Guide

How to Install OPcache PHP Extension on Linux: 4 Easy Steps

PHP is one of the most widely used server-side scripting languages for web development. To enhance the performance of PHP applications, various optimization techniques and tools are available. One such tool is OPcache, a PHP extension that ...

RR
Website Vidya TeamLead Systems Educator
Published:
6 min read
How to Install OPcache PHP Extension on Linux: 4 Easy Steps
AI Executive SummaryCORE CIS AI

6 min read

PHP is one of the most widely used server-side scripting languages for web development. To enhance the performance of PHP applications, various optimization techniques and tools are available. One such tool is OPcache, a PHP extension that ...

Key Highlights
  • Prerequisites
  • How to Install APCu PHP Extension on Linux
  • Troubleshooting Common Issues
Grounded in full engineering runbookCORE CIS Ai Engine

In this article, we will provide a detailed, step-by-step guide on how to install APCu PHP extension on a Linux system.

APCu (Alternative PHP Cache - User Cache) is a popular PHP extension used for caching data in userland. It is a lightweight caching solution that helps improve the performance of PHP applications by storing data in memory, reducing the need to repeatedly fetch data from slower storage systems like databases or files. APCu is particularly useful for caching frequently accessed data, such as configuration settings, session data, or computed results.

Whether you are using Ubuntu, Debian, CentOS, or any other Linux distribution, this guide will help you get APCu up and running.


Prerequisites

Before proceeding with the installation, ensure that you have the following:

  • A Linux-based operating system (e.g., Ubuntu, Debian, CentOS, etc.).
  • PHP is installed on your system. You can check the PHP version by running:
php -v
  • Administrative privileges (root or sudo access) to install packages and modify system configurations.

How to Install APCu PHP Extension on Linux


Step 1: Update Your System

Before installing any new software, it is always a good practice to update your system's package list to ensure you have the latest versions of all installed packages.

For Ubuntu/Debian:

sudo apt update
sudo apt upgrade

For CentOS/RHEL:

sudo yum update

Step 2: Install Required Dependencies

APCu requires certain dependencies to be installed on your system. These dependencies include the PHP development package and a compiler-like gcc.

For Ubuntu/Debian:

sudo apt install php-dev php-pear build-essential

For CentOS/RHEL:

sudo yum install php-devel php-pear gcc

Step 3: Install APCu Using PECL

The easiest way to install the APCu extension is by using PECL (PHP Extension Community Library). PECL is a repository for PHP extensions that simplifies the installation process.

Install APCu via PECL:

Run the following command to install APCu:

sudo pecl install apcu

Verify Installation:

Once the installation is complete, you should see a message indicating that APCu has been successfully installed. The output will also include the path where the apcu.so file is located (e.g., /usr/lib/php/20210902/apcu.so).


Step 4: Enable the APCu Extension

After installing APCu, you need to enable it in your PHP configuration.

Locate the PHP Configuration Directory:

The location of the PHP configuration directory varies depending on your Linux distribution and PHP version. Common paths include:

  • Ubuntu/Debian: /etc/php/<version>/cli/conf.d/
  • CentOS/RHEL: /etc/php.d/ Replace <version> with your PHP version (e.g., 7.4, 8.0, etc.).

Create a Configuration File for APCu:

Create a new configuration file to enable the APCu extension. For example:

sudo nano /etc/php/<version>/cli/conf.d/20-apcu.ini

Add the following line to the file:

extension=apcu.so

Enable APCu for Web Server (if applicable):

If you are using a web server like Apache or Nginx, you need to enable APCu for the PHP version used by the web server. For example:

  • Apache: /etc/php/<version>/apache2/conf.d/20-apcu.ini
  • Nginx: /etc/php/<version>/fpm/conf.d/20-apcu.ini Add the same line (extension=apcu.so) to the appropriate configuration file.

Step 5: Restart Your Web Server

After enabling the APCu extension, restart your web server to apply the changes.

  • For Apache:
sudo systemctl restart apache2
  • For Nginx:
sudo systemctl restart nginx
  • For PHP-FPM:
sudo systemctl restart php<version>-fpm

Step 6: Verify APCu Installation

To confirm that APCu has been successfully installed and enabled, you can create a PHP info file.

Create a PHP Info File:

Create a file named info.php in your web server's root directory (e.g., /var/www/html):

sudo nano /var/www/html/info.php

Add the following code to the file:

<?php
phpinfo();
?>

Access the PHP Info Page:

Open a web browser and navigate to http://your-server-ip/info.php. Look for the "APCu" section in the output. If APCu is installed correctly, you should see details about the extension, including its version and configuration settings.


Step 7: Configure APCu (Optional)

APCu comes with default settings that work well for most use cases. However, you can customize its behavior by modifying the PHP configuration.

Edit the PHP Configuration File:

Open the PHP configuration file (e.g., /etc/php/<version>/cli/php.ini or /etc/php/<version>/fpm/php.ini) in a text editor:

sudo nano /etc/php/<version>/cli/php.ini

Add or Modify APCu Settings:

Add the following lines to configure APCu:

[apcu]
apc.enabled=1
apc.shm_size=32M
apc.ttl=3600
apc.enable_cli=1
  • apc.enabled: Enables or disables APCu (1 for enabled, 0 for disabled).
  • apc.shm_size: Sets the size of the shared memory segment used by APCu.
  • apc.ttl: Defines the time-to-live (TTL) for cached items in seconds.
  • apc.enable_cli: Enables APCu for CLI scripts (useful for testing).

Save and Restart:

Save the changes and restart your web server or PHP-FPM service to apply the new settings.


Step 8: Test APCu Functionality

To ensure that APCu is working as expected, you can create a simple PHP script to test its functionality.

Create a Test Script:

Create a file named test_apcu.php in your web server's root directory:

sudo nano /var/www/html/test_apcu.php

Add the Following Code:

<?php
// Store data in APCu cache
apcu_store('test_key', 'Hello, APCu!');

// Retrieve data from APCu cache
$data = apcu_fetch('test_key');

// Output the retrieved data
echo $data;
?>

Run the Script:

Open a web browser and navigate to http://your-server-ip/test_apcu.php. If APCu is working correctly, you should see the message "Hello, APCu!" displayed on the page.


Troubleshooting Common Issues

APCu Not Showing in phpinfo():

  • Ensure that the extension=apcu.so line is added to the correct PHP configuration file.
  • Restart your web server or PHP-FPM service after making changes.

Permission Errors:

  • Ensure that the user running the web server (e.g., www-data for Apache) has permission to access the APCu shared memory.

Memory Allocation Errors:

  • If you encounter memory allocation errors, increase the apc.shm_size value in the PHP configuration.

Conclusion

Installing the APCu PHP extension on Linux is a straightforward process that can significantly improve the performance of your PHP applications. By following the steps outlined in this guide, you can easily install, configure, and test APCu on your Linux system. Whether you are running a small personal project or a large-scale web application, APCu provides an efficient and reliable caching solution to enhance your application's speed and responsiveness.

By mastering the installation and configuration of APCu, you are taking an important step toward optimizing your PHP applications for better performance and scalability. Happy coding!

Written by

Website Vidya Team

Technology educator and researcher at Website Vidya.

Discussion

0
Share your thoughts, ask a question, or suggest a tip...
Write →

No comments on this guide yet. Be the first to share your thoughts or ask a question!

Recommended Reading10 Guides

Related Technical Guides

Tested runbooks, server administration walkthroughs, and troubleshooting guides

Deployment•

How to Install PDO Extension in PHP

PHP Data Objects (PDO) is one of the most important extensions in PHP for working with databases in a secure, consistent, and modern way. If you are building dynamic websites, APIs, CMS platforms, or enterprise applications, PDO is not opti...

RR
Rajesh Rai
Read More
Deployment•

25 Best Linux Commands Every Sysadmin Should Know

If you’ve spent any time managing Linux servers, you already know this truth: the command line is not optional. It’s where real troubleshooting happens, where performance issues are understood, and where outages are prevented before users e...

RR
Rajesh Rai
Read More
Deployment•

How to Fix Snapd Consuming High CPU / RAM on Linux

If you’ve ever opened your system monitor and noticed snapd quietly eating up your CPU or RAM, you’re not alone. Many Linux users—especially on Ubuntu and Ubuntu-based distributions—eventually run into this issue and wonder what’s going on ...

RR
Rajesh Rai
Read More