@Venkatesh, Thanks for posting this question. I understand you have tried multiple steps to narrow down the issue.
There may be certain situations in which 404s appear - this typically falls into the three below categories:
- A 404 due to actual missing content or an unmapped endpoint (e.g. file not found, Controller is not mapped to the endpoint/path name, etc.)
- A 404 due to a HTTP 500
- A 404 due to site root misconfiguration
Just to highlight, CodeIgniter serves content out of its /public
directory. NGINX on App Service Linux uses its site root as /home/site/wwwroot
.
I understand you have added the startup script, since PHP 8.x uses NGINX as a default Web Server - you will need to use a custom startup script to serve CodeIgniters content out of /public
- PHP- Configuration - Custom Startup Script (Kindly review this)
Does this work locally? HTTP 404’s can come back from NGINX if site root does not match where the application root is. This is defined in the default.conf file under sites-available with the root directive.
Enable App Service Logging and then reviewing application logs to fetch more info about the error.
Refer these docs for more info: