I have been testing Ubuntu 18.04 LTS recently. It is installed on my Windows 10 machine via VMware Workstation 14 Pro… There are lots of fun things in store and upcoming. Here’s how to install Apache2 with PHP support on Ubuntu 18.04 LTS.
Oh, Ubuntu 18.04 LTS also comes with the latest version of PHP… which is 7.1
If you’re going to be building any PHP based application, you’re mostly going to need PHP and related modules installed on your systems. PHP is an open source, server scripting language use for creating dynamic web applications and websites.
PHP is a widely-used, free, and efficient alternative to competitors such as Microsoft’s ASP.
For those wanting to test Apache2 with PHP support on Ubuntu 18.04 LTS, the steps below show you how to do that. Majority of the popular content management systems like WordPress, Joomla, Drupal use it, so PHP is a big deal!
When you’re ready to set up Apache2 environment with PHP 7.1 support, follow the steps below:
Step 1: Install Apache2 Web Server
sudo apt install apache2
After installing Apache2, the commands below can be used to stop, start, reload and enable Apache2 service to always startup when the server boots up.
sudo systemctl stop apache2.service
sudo systemctl start apache2.service
sudo systemctl reload apache2.service
sudo systemctl enable apache2.service
Step 2: Install PHP and Related Modules
PHP 7.1 may not be available in Ubuntu default repositories… in order to install it, you will have to get it from third-party repositories.
Run the commands below to add the below third party repository to upgrade to PHP 7.1
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
Then update and upgrade to PHP 7.1
sudo apt update
Finally, run the commands below to install PHP 7.1 and related modules..
sudo apt-get install php7.1 libapache2-mod-php7.1 php7.1-mcrypt php7.1-cli php7.1-xml php7.1-zip php7.1-mysql php7.1-gd php7.1-imagick php7.1-recode php7.1-tidy php7.1-xmlrpc
The line above will allow PHP to function with many popular PHP based websites and applications.
Step 3: Configure Apache2 PHP Settings
Now that Apache2 and PHP are installed, you may want to configure Apache2 to use PHP properly. The default Apache2 PHP configuration file for PHP is located at /etc/php/7.1/apache2/php.ini
Open PHP Apache2 configuration file by running the commands below
sudo nano /etc/php/7.1/apache2/php.ini
Then edit the file to suit your environments. Scroll down the file line by line and modify the lines for the settings below… always configure an appropriate setting for your environment.
file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago
Next, lookup Apache2 dir.conf file and confirm the highlighted line below… If you see index.php defined, then you’re good.
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
If you don’t see the index.php definition on the line, please add it and save the file.
Restart Apache2 and PHP 7.1 services
sudo systemctl restart apache2.service
Step 4: Test PHP Setup
At this point, Apache2 and PHP should be installed and ready.. to test your Apache2 PHP settings, create a blank file with the line below:
sudo nano /var/www/html/phpinfo.php
Then add the line in the file and save.
<?php phpinfo( ); ?>
Save the file and open your browser and browse to the server name or IP address followed by phpinfo.php
You should see something similar to the image below… if you do, then you’re all good!
You may also like the post below:
Nginx HTTP Server on Ubuntu 18.04 LTS Server