Website Vidya
Linux & ServersStep-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
Rajesh RayLead 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:

Advertisement
  • 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:

Advertisement
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:

Advertisement

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!

RR
Written byVerified Author

Rajesh Ray

I’m Rajesh Rai, a full-stack developer, Linux administrator, and technology enthusiast passionate about making complex technology easier to understand and use.

SPAM-FREE MODERATED DISCOURSE

Join the Conversation & Perspective

Have thoughts, counterpoints, or reflections on this story? Engage directly with fellow readers and editorial contributors.

AT
MP
JV
+2

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

Linux & Servers•

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
Featured Infrastructure PartnerUp to 75% OFF + 3 Months Free

Supercharge Your Linux & Cloud Workloads with Hostinger

Deploy high-speed NVMe KVM VPS, Docker containers, and LiteSpeed-accelerated WordPress servers in under 60 seconds with full root access, dedicated IPv4, and 24/7 technical support.

Pure NVMe SSD StorageFull Root Access & SSHFree Domain & Unlimited SSL99.9% Uptime SLA
Plans from$2.99/mo
Claim Hostinger DealAffiliate link • Special discount applied at checkout