Home >Backend Development >PHP Problem >How to solve the problem that Apache cannot recognize PHP in Linux

How to solve the problem that Apache cannot recognize PHP in Linux

PHPz
PHPzOriginal
2023-04-19 09:15:511397browse

In the process of using the Linux operating system, it is often encountered that Apache cannot recognize PHP. This is due to the lack of PHP modules in the server environment or the PHP modules are not configured correctly. This article will introduce how to solve the problem of Apache not recognizing PHP in Linux.

1. Confirm the problem

Before starting to solve the problem, you need to confirm whether Apache has been installed correctly and is running.

  1. Check whether Apache is installed

You can check whether Apache is installed by running the following command:

sudo systemctl status apache2

If Apache is not installed, you need to use the following command. Installation:

sudo apt-get update
sudo apt-get install apache2
  1. Check whether Apache is running

You can check whether Apache is running through the following command:

sudo systemctl status apache2

If Apache is not started, you can pass Start with the following command:

sudo systemctl start apache2

2. Install PHP

After confirming that Apache is installed and running correctly, you need to install the PHP module. The following is the command to install PHP under Ubuntu:

sudo apt-get update
sudo apt-get install php libapache2-mod-php

After the installation is completed, you need to restart Apache:

sudo systemctl restart apache2

3. Adjust the Apache configuration file

After installing the PHP module, Apache's configuration file also needs to be adjusted so that it can properly recognize PHP. The following is the command to adjust the Apache configuration file:

sudo nano /etc/apache2/mods-enabled/dir.conf

In the opened file, you can see the following content:

<ifmodule>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</ifmodule>

Need to move index.php to the directory list At the front, the modified content is as follows:

<ifmodule>
    DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</ifmodule>

After the modification is completed, Apache needs to be restarted to make the configuration take effect:

sudo systemctl restart apache2

4. Test

After completing the above steps Finally, you need to verify whether Apache can recognize PHP normally.

  1. Create PHP file

You can create a PHP file in Apache’s default website directory through the following command:

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

Enter in the open file The following:

<?php phpinfo();
?>

Save and close the file.

  1. Visit in the browser

Enter the following address in the browser:

http://localhost/info.php

If the following page appears, it means that Apache has been able to recognize it normally PHP:

How to solve the problem that Apache cannot recognize PHP in Linux

#If the page cannot be accessed, it may be due to the security rules configured in the Apache configuration file. This problem can be solved by modifying the security rules of Apache:

sudo nano /etc/apache2/conf-available/security.conf

In the opened file, comment out the following content:

<directory></directory>
    Options FollowSymLinks
    AllowOverride None
    Require all denied


<directory>
    AllowOverride None
    Require all granted
</directory>

<directory></directory>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted

After modification, restart Apache:

sudo systemctl restart apache2

5. Summary

This article introduces the solution to the problem that Apache cannot recognize PHP in Linux. You can make Apache recognize PHP properly by identifying the problem, installing PHP modules, adjusting Apache configuration files, and testing. At the same time, it also introduces some problems and solutions that may be encountered, hoping to help everyone solve the problem smoothly.

The above is the detailed content of How to solve the problem that Apache cannot recognize PHP in Linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn