Веб-сервер контролирует, какие запросы отправляются каким программам. Самый простой метод - это то, что вы описали, когда domain.com/folder/file.ext отправляется обработчику для файла. Это может быть PHP в случае файла .php, или файл может отображаться как есть, в случае файла HTML.
Другая возможность - это то, что описал benhowdle89, что также является поведением по умолчанию для большинства веб-серверов - если вы запрашиваете domain.com/folder/, он проверяет index.html, index.php или тому подобное. 1003 *
В случае сайтов, подобных SO, сопоставление отличается. Веб-сервер настроен так, чтобы принимать запрос типа /questions/4339829/why-some-urls-of-websites-doesnt-show-the-php-extention-just-shows-words-like
и отправлять этот запрос программе, которая знает, что с ним делать. Например, это может быть что-то вроде /scripts/displayquestion.php?question_id=4339828
или любая другая программа, написанная для обработки запросов. Это может быть сценарий PHP, сервер приложений или другой сценарий, написанный на другом языке.