Как настроить необязательные или “посторонние” URL-адреса?

StackOverflow https://stackoverflow.com/questions/180007

Вопрос

Как бы вы настроили / обработали посторонние / необязательные объекты URL (возможно, псевдонимы)?

ИТАК, это хороший пример:

  • stackoverflow.com/questions/99999999/
  • stackoverflow.com/questions/99999999/вопрос-идет-сюда (плохой пример, но я не мог придумать лучшего)

URL-адреса Amazon еще более запутанны (например, Разжигать)

  • amazon.com/gp/product/B000FI73MA/
  • amazon.com/Kindle-Amazons-Беспроводное Устройство для чтения/dp/B000FI73MA/

[Редактировать] Возможно, это не самый лучший план действий, но я действительно спрашиваю об этом в целом.для любого отдельного сервера.

Это было полезно?

Решение

Этот метод широко известен как переписывание URL-адресов.Если вы ищете решение в IIS, вы можете использовать Перезапись ISAPI, что очень похоже на mod_rewrite мод_реврейтинг для apache.Или же вы можете пойти на ASP.Net Маршрутизация MVC механизм.

Другие советы

Если вы используете Apache, взгляните на mod_rewrite мод_реврейтинг

Что-то вроде этого (при ручной настройке URL-адресов):

RewriteRule ^([^\/]+)\/([^\/]+)\/(.*) index.php?controller=$1&view=$2&args=$3

В противном случае я позволяю фреймворку MVC обработать это и использовать аргументы контроллера соответствующим образом.

mod_rewrite часто используется, по крайней мере, в Linux с Apache.

Это задача для вашего веб-приложения, а не для вашего веб-сервера.

Для URL=> сопоставлений файлов, таких как PHP (или статические веб-серверы), это сложно;но на фреймворках MVC это вполне естественно, даже на фреймворках PHP MVC.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top