# Install and Configure nginx with PHP on Linux

1. Log into the Linux device
2. Run the following commands in a terminal window
   # update software repositories
   sudo apt update
   # install available software updates
   sudo apt upgrade -y
   # install nginx and php
   sudo apt install nginx php7.3-fpm php7.3-common php7.3-mysql php7.3-gmp php7.3-curl php7.3-intl php7.3-mbstring php7.3-xmlrpc php7.3-gd php7.3-xml php7.3-cli php7.3-zip php7.3-soap php7.3-imap
   # set the owner of the web root
   sudo chown -R www-data /usr/share/nginx/html
   # edit the nginx config to add PHP support
   sudo nano /etc/nginx/conf.d/default.conf
3. Paste the following configuration into default.conf

   server {
   listen 80;
   listen [::]:80;

   root /usr/share/nginx/html;
   index index.php index.html index.htm;

   server_name localhost;

   location / {
   try_files $uri $uri/ =404;
   }

   location ~ \.php$ {
   include snippets/fastcgi-php.conf;
   fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
   }
   }

4. Press CTRL+O, Enter, CTRL+X to write the changes to default.conf
5. Continue with the following commands
   # restart nginx service
   sudo systemctl restart nginx
   # create a test phpinfo file
   sudo nano /usr/share/nginx/html/phpinfo.php
6. Paste the following into the .php page

   <?php
   phpinfo();
   ?>

7. Press CTRL+O, Enter, CTRL+X to write the changes to phpinfo.php
8. Open a web browser and navigate to http://DNSorIP/phpinfo.php