2009-11-10 3 views
1

Мои Серверные адреса выглядеть следующим образом:Как я могу очистить маршруты администратора Symfony?

mysite.com/backend.php/blog 

Я хотел бы изменить его на:

mysite.com/backend/blog 

Технически это не ограничивается администратора приложений, поскольку Symfony предоставляет каждому приложению два фронт-контроллера скрипты. Но я ненавижу иметь имя сценария в URL-адресах, и поэтому я хотел бы его изменить. Это возможно?

Заранее спасибо.

Редактировать

@codecowboy - я решить эту проблему, создав «» бэкэнд каталог в веб-каталоге. Затем я скопировал файл .htaccess, содержащий symfony в сети, и переместил передние контроллеры backend.php и backend_dev.php в/backend и переименовал их index.php и index_dev.php. Затем в каждом фронт-контроллере я говорю PHP, чтобы посмотреть еще один каталог для класса конфигурации проекта. Я занимаюсь этим некоторое время, и он отлично удовлетворяет мои потребности. Я фактически завернул все это в задачу, так что настройка нового приложения для администратора - это 1 шаг процесса.

+0

Вы решили это? – codecowboy

ответ

2

Вы можете добавить

#I'm no regular expression expert or mod_rewrite expert, this line probably has some bugs 
RewriteRule ^backend(.*)$ backend.php [QSA,L] 

в файл .htaccess прямо перед

RewriteRule ^(.*)$ index.php [QSA,L] 

и решает 1/2 вашей проблемы. Все, что отправлено на сайт yoursite.com/backend/xxx, будет перенаправлено через backend.php. Другая проблема, которую вы получаете, - это внутренняя маршрутизация symfony. Он будет интерпретировать yoursite.com/backend/xxx как запрос для модуля «backend» и действия «xxx». Я уверен, что это не так сложно решить. Удачи!

Смежные вопросы