Веб-сервер - это всего лишь небольшая часть программного обеспечения, которое прослушивает входящий запрос, и когда он его получает, он отправляет какой-то ответ.
Традиционно серверы (например, Apache / IIS, обслуживающие обычные HTML-файлы) будут просматривать входящий запрос, находить соответствующий файл в своей локальной файловой системе (например, для /home/about.html они будут искать в home папку для файла с именем about.html ) и отправьте содержимое этого файла обратно клиенту, выполняющему запрос. Это быстрый, легкий и очень простой в реализации - но это только один из возможных способов создания веб-сервера. Большинство веб-серверов предлагают возможность переопределить это поведение и делать что-то более умное с входящими запросами.
Что вам нужно сделать, так это настроить сам веб-сервер (IIS, Apache, lighttpd и т. Д.) Так, чтобы он направлял запросы к определенному сценарию или ресурсу.
В IIS в Windows есть два способа добиться этого.
Во-первых, необходимо настроить функцию IIS «Пользовательские ошибки» и сопоставить страницу с ошибкой 404, скажем, /MyCms/FindPage.asp - это означает, что каждый раз, когда клиент запрашивает страницу, которая физически отсутствует, ваш веб-сервер вместо этого запустит эту ASP-страницу, а затем внутри этой страницы вы можете извлечь исходный URL-адрес запроса (/home/info/events.html), найти его в базе данных или что-то еще и вернуть. Клиент не будет знать, что это произошло.
Для более мощной альтернативы вы можете использовать сопоставление с подстановочными знаками, как предложено в посте olle - это отобразит КАЖДЫЙ запрос (не только "не найден") в ваш скрипт или обработчик CMS .