What best practices should be followed when structuring folders and files in a PHP project to avoid issues with URL rewriting?

When structuring folders and files in a PHP project, it is important to follow a consistent naming convention to avoid issues with URL rewriting. One common practice is to use a front controller pattern where all requests are routed through a single PHP file, such as index.php, which then includes the necessary files based on the URL. This helps in centralizing the logic and avoiding conflicts with URL rewriting rules.

// index.php

// Get the requested URL
$request_uri = $_SERVER['REQUEST_URI'];

// Route the request to the appropriate file based on the URL
switch ($request_uri) {
    case '/':
        include 'home.php';
        break;
    case '/about':
        include 'about.php';
        break;
    case '/contact':
        include 'contact.php';
        break;
    default:
        include '404.php';
        break;
}