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