Hi Alistair,
This is the changes to nginx.conf
server {
listen 8097;
listen [::]:8097;
server_name _;
root /var/www/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php-fpm/default.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
And www.conf
user = nginx
group = nginx
listen = /run/php-fpm/default.sock
ls /var/run/php-fpm
default.sock php-fpm.pid
did I miss out anything? I still get the same error from nginx log
Thanks
Hello Alistair,
do you have any idea where I have gone wrong?
Thanks
Hi Alistair,
I have solve it and the task is completed.
from How to Connect NGINX to PHP-FPM Using UNIX or TCP/IP Socket
vi /etc/nginx/nginx.conf : add the below block
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass php-fpm;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
vi /etc/nginx/conf.d/php-fpm.conf
# PHP-FPM FastCGI server
# network or unix domain socket configuration
upstream php-fpm {
server unix:/run/php-fpm/default.sock;
}
And it works.
2 Likes
Hello @Alistair_KodeKloud ,
“I got the same error twice. Please help me with this. I’m running Nginx on the right server, and I’m using the curl command as given in the task. If the port is wrong, then how is that command working, especially considering that the same port is used in that command?”
It can work if you have configured the port consistently through the task, but if the port is not the one the question asks for then it will be incorrect.
The port is likely to be different each time you retry the question.
@Alistair_KodeKloud no i rechecked many times before submitting the task.
@Alistair_KodeKloud
you can check here and verify
I have just done the lab again and it is working
At the end, you must exit from the app server back to jump host and the curl command must work from there too (see part d.
of question).
[thor@jump_host]$ curl http://stapp03:8093/index.php
Welcome to xFusionCorp Industries![thor@jump_host]$
1 Like
@34_Aniket-Kale Just to make absolutely sure the lab isn’t broken I did it a second time and it is not broken, so if it is not working for you, then you have made a mistake somewhere.
I have written up a detailed solution here.
# Configure Nginx + PHP-FPM Using Unix Sock
IMPORTANT: Various parameters highlighted below in the question may be different each time you reset the lab. As such the solution below is tailored to this particular instance of the question. You must change it accordingly with what your version of the question asks for.
## Question
The Nautilus application development team is planning to launch a new PHP-based application, which they want to deploy on Nautilus infra in Stratos DC. The development team had a meeting with the production support team and they have shared some requirements regarding the infrastructure. Below are the requirements they shared:
a. Install nginx on `app server 2` , configure it to use port `8094` and its document root should be `/var/www/html`.
b. Install php-fpm version `7.4` on `app server 2`, it must use the unix socket `/var/run/php-fpm/default.sock` (create the parent directories if don't exist).
c. Configure php-fpm and nginx to work together.
This file has been truncated. show original
2 Likes
Thank You its working now
Respected Sir,
Following steps i did to accomplish the task
Install Nginx
sudo yum install -y nginx
sudo systemctl enable nginx
Configure NGINX for the app
Edited /etc/nginx/nginx.conf:
sudo vi /etc/nginx/nginx.conf
server {
listen 8095;
listen [::]:8095;
server_name stapp03;
root /var/www/html;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~ \ .php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php-fpm/default.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
sudo systemctl restart nginx
Install PHP-FPM 8.1
sudo dnf install epel-release -y
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm -y
sudo dnf module list php
sudo dnf module enable php:remi-8.1 -y
sudo dnf install php-fpm php php-cli php-common php-mysqlnd php-gd php-xml php-mbstring php-pdo php-opcache -y
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
php-v
sudo systemctl status php-fpm
Configure PHP-FPM
Edited /etc/php-fpm.d/www.conf:
sudo vi /etc/php-fpm.d/www.conf
listen = /var/run/php-fpm/default.sock
;listen.owner = nginx
;listen.group = nginx
;listen.mode = 0660
sudo mkdir -p /var/run/php-fpm
sudo chown -R nginx:nginx /var/run/php-fpm
sudo systemctl enable --now php-fpm
Testing
From the Jump Host, I ran:
Curl… command
Error : php-fpm is not congigured to use ‘/var/run/php-fpm/default.sock’ socket App Server 3
Kindly detect the error in the whole process.
javi04
August 21, 2025, 4:03pm
#22
This is what mine says and I did everything correctly
javi04
August 21, 2025, 4:32pm
#23
Found my mistake. Completed now!!!
javi04
August 21, 2025, 4:36pm
#24
change ```
fastcgi_pass unix:/var/run/php-fpm/default.sock;
to ```
fastcgi_pass php-fpm;
Then go to /etc/nginx/conf.d/php-fpm.conf and put this "/var/run/php-fpm/default.sock" in the upstream{}
Many Thanks for your reply.
I’ve successfully completed my task.
This is what i did to accomplish the task:
Install Nginx
sudo yum install -y nginx
sudo systemctl enable nginx
Configure NGINX for the app
Edited /etc/nginx/nginx.conf:
sudo vi /etc/nginx/nginx.conf
server {
listen 8091 ;
listen [::]:8091;
server_name stapp03;
root /var/www/html;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~\.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php-fpm/default.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
sudo systemctl restart nginx
Install PHP-FPM 8.3
sudo dnf install epel-release -y
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm -y
sudo dnf module list php
sudo dnf module enable php:remi-8.3 -y
sudo dnf install php-fpm php php-cli php-common php-mysqlnd php-gd php-xml php-mbstring php-pdo php-opcache -y
sudo systemctl start php-fpm
sudo systemctl enable php-fpm
php -v
sudo systemctl status php-fpm
Configure PHP-FPM
Edited /etc/php-fpm.d/www.conf:
sudo vi /etc/php-fpm.d/www.conf
user = nginx
group = nginx
listen = /var/run/php-fpm/default.sock
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
Also, ensure the directory exists:
sudo mkdir -p /var/run/php-fpm
sudo chown -R nginx:nginx /var/run/php-fpm
sudo systemctl enable --now php-fpm
Testing:
From the Jump Host, I ran:
Curl… command
None of these has worked for me. I have attempted this 3 times now without success.
The output message “website not properly setup” is a rather too generic message for anyone to see what the issue is since the final output was successful.
Thank you so much @Alistair_KodeKloud , this checked out!
The point I missed was the configuration of php_fpm nginx module:
Configure php-fpm nginx module
/etc/nginx/conf.d/php-fpm.conf
Good day humble colleagues,
Having issues in this particular task after configuring all parameters, the curl failed
Will be grateful for any positive yields to success