Если у меня есть пользователь, обращающийся к моему сайту, например: www.example.com/testpage.html, есть ли способ получить "testpage.html" в виде строки, если testpage.html не существует? (Я хочу сделать пользовательские сообщения об ошибках 404 ..Обычно я хочу, чтобы пользователь зашел на страницу, которая не существует, скажем «Эта страница [pagename] не существует» и отобразил результат поиска с именем pagename в качестве запроса.)

2 ответа2

2

Как правило, если вы хотите сделать что-нибудь полезное с динамическим контентом, вам потребуется какой-то интерпретируемый язык для обеспечения логики. Как вы не указали, я предполагаю, что вы будете использовать PHP.

В случае PHP у вас есть доступ к суперглобальному значению $ _SERVER, который, помимо прочего, предоставляет REQUEST_URI (например, $ _SERVER ['REQUEST_URI']), который именно то, что вы ищете. Затем вы можете построить некоторую логику в своем PHP-сценарии вокруг этой переменной, чтобы выполнять действия, основанные на определенных совпадающих URI.

Пример:

if ($_SERVER['REQUEST_URI'] == "/testpage.html") {
  // Do something here
}

Конечно, вы могли бы также полюбить регулярные выражения, операторы case и т.д.

0

Похоже, ваш реальный вопрос: "Как сделать пользовательскую страницу 404", да? Это будет зависеть от веб-сервера.

Что касается извлечения частей URL, если вы используете PHP, тогда вам нужна parse_url() . В Perl вы бы использовали модуль URI

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .