This post shows students and new users the steps to install MongoDB on Ubuntu with Apache and PHP support. MongoDB, a free open source, NoSQL, High-performance, the schema-free document-oriented database can be used to create powerful websites and applications.
If you’re going to be developing an application or a website that requires MongoDB as its backend database server, the steps below should be a great place to start to get MongoDB working with Apache and PHP.
MongoDB packages are included in Ubuntu default repositories, however, the versions in Ubuntu repositories aren’t the latest. To install the latest, you will have to install the MongoDB package repository on Ubuntu Linux, and this tutorial will show you how.
Also, for students and new users learning Linux, the easiest place to start learning is Ubuntu Linux. Ubuntu is the modern, open-source Linux operating system for desktops, servers, and other devices.
When you’re ready to get MongoDB setup on Ubuntu with Apache2 and PHP support, continue with the steps below:
How to install Apache on Ubuntu Linux
To install the Apache2 HTTP server on Ubuntu, run the commands below.
sudo apt update sudo apt install apache2
After installing Apache2, the commands below can be used to stop, start and enable the Apache2 service to always start up with the server boots.
sudo systemctl stop apache2.service sudo systemctl start apache2.service sudo systemctl enable apache2.service
To test the Apache2 setup, open your browser and browse to the server hostname or IP address and you should see the Apache2 default test page as shown below.
http://localhost

How to install MongoDB on Ubuntu Linux
We have written a great tutorial on how to install and configure MongoDB on Ubuntu Linux. To read that post, click on the link below:
How to install and configure MongoDB on Ubuntu Linux
After reading the post above and installing MongoDB on Ubuntu, continue below with the setup.
How to install PHP on Ubuntu Linux
PHP 7.4 may not be available on Ubuntu default repositories. 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.4
sudo apt-get install software-properties-common sudo add-apt-repository ppa:ondrej/php
Then update and upgrade to PHP 7.4
sudo apt update
Next, run the commands below to install PHP 7.4 and related modules.
sudo apt install php7.4 libapache2-mod-php7.4 php7.4-common php7.4-cli php7.4-mongodb php-pear php7.4-dev
After installing PHP 7.2, run the commands below to open the PHP default config file for Apache2.
How to install MongoDB PHP drivers
MongoDB PHP drivers provide exceptionally thin glue between MongoDB and PHP. run the commands below to install it.
sudo pecl install mongodb
After that, run the commands below to enable the drivers
sudo bash sudo echo "extension=mongodb.so" >> /etc/php/7.4/apache2/php.ini
Restart Apache2
sudo systemctl restart apache2.service
To verify the MongoDB PHP driver is installed and enabled, continue below.
Create a phpinfo.php file in the Apache2 root directory by running the commands below
sudo nano /var/www/html/phpinfo.php
Then type the content below and save the file.
<?php phpinfo( ); ?>
Save the file. then browse to your server hostname followed by /phpinfo.php
http://localhost/phpinfo.php
You should see the PHP default test page.

That’s it!
This post showed you how to install MongoDB on Ubuntu Linux with Apache and PHP support. If you find any error above or have something to add, please use the comment form below.
thank you,very well.
how to connect php7 in mongodb in ec2 ubuntu 16.04?
means i wanna create a website for that i want to use mongo as db for this how would i connect it in php coding.
This is the best link that I could follow
I’m getting an error: sudo : pecl : command not found
In my case info.php “mongodb” section is showing exactly same as above. But when i run a simple php connectivity config file it doesn’t run well.
My config.php file contain these codes :-
<?php
$connection = new MongoClient();
echo "COnnected to MONGODB”;
$db=$m->mydb;
echo “database selected”;
?>
can u please help me…thanks in advance
amazing blog for ubuntu users. i have successfully install all things properly.
thanks for this
Please change php-7.2-cli to php7.2-cli. (Without an hyphen between php & 7.2)
sudo apt install php7.2 libapache2-mod-php7.2 php7.2-common php-7.2-cli php7.2-mongodb php-pear php7.2-dev
I have installed MongoDB check status:
● mongodb.service – An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-08-19 20:25:31 IST; 59s ago
Docs: man:mongod(1)
Main PID: 25309 (mongod)
Tasks: 23 (limit: 4915)
CGroup: /system.slice/mongodb.service
└─25309 /usr/bin/mongod –unixSocketPrefix=/run/mongodb –config /etc/mongodb.conf
Aug 19 20:25:31 user systemd[1]: Started An object/document-oriented database.
After that I have create DB and insert one record for test result are as below:
> db.user.findOne();
{
“_id” : ObjectId(“5d5a969006e247a47fe2dc88”),
“name” : “my_name”,
“age” : 2
}
> exit
bye
But while I am going to connect with PHP7.2 using below code:
mydb;
echo “Database mydb selected”;
?>
Gives me an error :
PHP Fatal error: Uncaught Error: Class ‘MongoClient’ not found in /var/www/html/mongo/mongo.php:3
Stack trace:
#0 {main}
thrown in /var/www/html/mongo/mongo.php on line 3
Could you please help out me?
Thanks.