Переписывание Apache: удаление части URL

Переписывание Apache: удаление части URL

У меня есть приложение Ruby on Rails с двумя подсайтами www.example.com/site1и www.example.com/site2. Для демонстрационных целей нам нужно отключить site2и показать только site1. Поэтому я сделал несколько перенаправлений в конфигурации моего виртуального хоста Apache, например так

Redirect 301 http://www.example.com/site2 http://www.example.com/site1
Redirect 301 http://www.example.com http://www.example.com/site1

чтобы быть уверенным, что всегда выполняется перенаправление на site1. Теперь было бы здорово, если бы мы могли как бы убрать из site1URL-адреса http://www.example.com/site1, чтобы он отображал только http://www.example.com, но также мог обрабатывать подсайты (например, «исходный» сайт — , http://www.example.com/site1/cat1и он должен отображаться как http://www.example.com/cat1).

  • Возможно ли это с помощью движка перезаписи Apache? И как?
  • Я не уверен, нужно ли мне что-то менять в моем приложении, или URL-адрес запроса (который получает мой маршрутизатор) не изменен Apache?
  • Другим решением было бы показывать домен только в адресной строке пользователя. Возможно ли это и как?

решение1

Это больше похоже на то, что вам просто следует изменить DocumentRoot для www.example.com на каталог, site1а не на то, что есть сейчас. Это устраняет необходимость в перенаправлении во всех трех приведенных вами примерах.

Связанный контент