To run a simple PHP file, we need to set up a server because of PHP is a backend language. It also needs to set up a database/FTP clients if its a PHP project.
Running a PHP file/application on the Windows operating system is much simpler using XAMPP. It contains an apache server, Mysql database, FTP, etc.
Here we are going to discuss the steps of installation of XAMPP on Windows 10 and running a simple PHP file using it.
1. UPDATE & UPGRADE PACKAGES
Before starting the installation of packages, it’s better to update and upgrade the packages we have on our system.
- apt-get update updates the list of available packages and their versions, but it does not install or upgrade any packages.
- apt-get upgrade actually installs newer versions of the packages you have. After updating the lists, the package manager knows about available updates for the software you have installed.
sudo apt-get update sudo apt-get upgrade
2. INSTALL APACHE2
A PHP file requires a web server to run. The commonly used web servers today are, Apache2 and NGINX. In this guide, we are using Apache2. It can be installed with the below command.
sudo apt-get install apache2
3. INSTALL PHP
PHP on Ubuntu can be installed using the below command.
sudo apt install php
4. INSTALL MYSQL
If our PHP project is using a database, it requires to have a database server on our system. The most using database with PHP is Mysql. This can be set up using the below steps
sudo apt-get install mysql-server mysql-client sudo mysql_secure_installation
When prompted, answer the questions using the guide below.
Enter current password for root (enter for none): (Press Enter) Set root password? [Y/n]: Y New password: (Enter password for mysql DB) Re-enter new password: (Repeat password) Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
In the latest version of MySQL, it rollbacks the support for the root user. So, you can not migrate the database with root user. So that we need to create a new user and grant all privileges to the user.
Note: Change the username and password as we need in the below commands.
sudo mysql --user=root mysql CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH GRANT OPTION; EXIT;
5. INSTALL PHPMYADMIN
phpMyAdmin is a free software tool written in PHP, intended to handle the administration of MySql over the Web. It can be installed using the command below.
sudo apt-get install phpmyadmin
It will ask for your MySQL credentials and you have to give it properly.
We can access the phpmyadmin panel using the link below.
Note: if it is giving an error that “The requested URL /phpmyadmin was not found on this server”, follow the steps below.
- Open apache2.conf file using nano editor.
sudo -H nano /etc/apache2/apache2.conf
2. Paste the following line to the end of the file.
3. Restart apache server
6. CREATING DATABASE (IF OUR PHP APP NEEDS A DATABASE)
This is an optional step and only need if our PHP project needs a database. Creating a MySQL database can be easily done using phpMyAdmin.
- Open the link below.
- Now Enter username and password(As you gave in step 4).
- Click on the New tab
- Enter a database name
It also needs to configure the database details in our PHP project.
7. PASTE/CLONE OUR PHP FILE/PROJECT TO HTDOCS DIRECTORY
var/www/html is the directory that the Apache web server looks for files to serve on our domain by default. This location can be changed later to whatever value we want. But now, we have to paste/clone our PHP file or project to this directory. As a default, this directory location can be seen in the location shown below.
8. RUNNING OUR PHP FILE/ PROJECT
Now its time to run our PHP file. https://localhost direct to our apache2 home page. http://localhost/MyApp.php runs the MyApp.php file inside /var/www/html directory.
Note: As an example, I have chosen MyApp.php as a sample PHP file and MyPHPProject as a sample PHP project directory.
If it’s a PHP project inside a directory, change the URL path.
If our PHP project contains an index.php file in its root, It does not need to enter the file name. The below URL runs our PHP project.
Have a nice code !