@qqqaa

Как организовать обработку url запросов на сайте на стороне сервера?

Я новичок в backend, на моем сайте есть система регистрации и добавления пользователей в БД. Для того, чтобы они могли через адресную строку (или браузерный поиск) попасть на какой-то определенный профиль сайта, можно было-бы создать для каждого пользователя отдельный php (или html) файл со стандартной почти пустой разметкой, наполняемой при помощи js скриптов, т.е. профили спокойно бы находились из адресной строки, а уже сами потом бы подключали для себя скрипты, стили и т.д..
Но это очень ресурсозатратно, поэтому я хочу создать отдельный серверный обработчик, занимающийся абсолютно всеми обращениями к сайту. Допустим, если сайт называется asd.com, то любое обращение через asd.com (asd.com/registration, asd.com/documents/users, asd.com и т.д.) должно проходить через этот скрипт. Сам скрипт, считывая url запрос, выдавал бы определенный нужный файл, а сама строка url при необходимости изменялась бы при помощи js (pushState и replaceState например)
А каким образом вообще можно организовать сервером обработку url? Т.е на каком-то серверном языке можно просто написать скрипт-обработчик, и он сам инициализируется сервером, как скрипт-обработчик url? И что это за язык такой?
Пожалуйста, помогите!
  • Вопрос задан
  • 341 просмотр
Пригласить эксперта
Ответы на вопрос 2
@alexalexes
Но это очень ресурсозатратно, поэтому я хочу создать отдельный серверный обработчик, занимающийся абсолютно всеми обращениями к сайту. Допустим, если сайт называется asd.com, то любое обращение через asd.com (asd.com/registration, asd.com/documents/users, asd.com и т.д.) должно проходить через этот скрипт. Сам скрипт, считывая url запрос, выдавал бы определенный нужный файл, а сама строка url при необходимости изменялась бы при помощи js (pushState и replaceState например)

Ну, вы уже описали технологию, берете любой популярный веб-сервер - php, node.js, python, asp net и реализовываете.
А каким образом вообще можно организовать сервером обработку url

Любой запрос, прежде чем попасть на выполнение в серверный скрипт попадает на обработку на http сервер.
Скорее всего, вы будете работать с apache или nginx. Ответ на этот вопрос кроется в искусстве конфигурирования файла htaccess или nginx.conf.
PS: После того, как http сервер перенаправит запрос согласно правилам конфиг. файла до нужной точки входа - тому файлу-скрипту, с которого начнется выполнение кода на сервере, сам скрипт точки входа может передать управление другому исполняемому файлу компоненту или просто подключать нужные скрипты, согласно параметрам url. Этот процесс называется роутингом, а координирующий скрипт - роутер.
Если вы поищите "Роутер или роутинг в <любимая среда разработки/фреймворк>" то найдете пример реализации.
Причем, роутинг можно реализовывать, как на стороне сервера (роутинг php/laravel/node.js), так и на стороне клиента (клиентские фрейворки, например vue).
Самый наколеночный вариант будет выглядеть так.
После того, как научитесь создавать многокомпонентное серверное приложение и связывать их, можете посмотреть, что такое Rest API, GraphQL, TreeQL.
Ответ написан
Комментировать
zkrvndm
@zkrvndm
Архитектор решений
Загуглите: создаем простой PHP роутер.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы