Symfony: параметры для URL администратора - PullRequest
0 голосов
/ 14 апреля 2009

В режиме разработки доступ к моему приложению symfony admin / backend можно получить по адресу http://localhost/backend_dev.php.. Для производственного режима я создал php-файл контроллера, admin.php, так что теперь в работе приложение администратора доступно на http://www.domain.com/admin.php.

Что мне нужно сделать, чтобы разрешить доступ к приложению администратора по адресу domain.com/admin или admin.domain.com?

Спасибо!

Ответы [ 5 ]

2 голосов
/ 16 сентября 2009

вы можете открыть новый поддомен и настроить виртуальный хост на этом поддомене (admin.domain.com), который указывает на сервер с вашим приложением symfony.

Вы можете посмотреть полное руководство [здесь] [1].

[1]: http://blog.mirthlab.com/2008/03/04/dynamically-loading-symfony-applications-via-subdomains/ здесь

1 голос
/ 11 мая 2009

Вам, вероятно, лучше поместить все админки, как в директорию админки, но вы можете обмануть, используя mod_rewrite

RewriteRule ^admin/?$ admin.php [L]
0 голосов
/ 17 июня 2010

Убедитесь, что ваш DNS правильно разрешает admin.domain.com, затем отредактируйте .htaccess в / web, чтобы mod_rewrite забрал ваш поддомен и переписал запросы к admin.php. При желании переименуйте ваш admin.php во что-то менее очевидное или, возможно, сделайте быструю проверку поддоменов внутри него, или расширьте перезапись с помощью перенаправления 301, если кто-нибудь нажмет domain.com/admin.php.

У меня работает следующий простой .htaccess:

Options +FollowSymLinks +ExecCGI

<IfModule mod_rewrite.c>
  RewriteEngine On

  # The admin subdomain returns the backend
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{HTTP_HOST} ^admin\.domain\..*
  RewriteRule ^(.*)$ admin.php [QSA,L]

  # Check if the .html version is here (caching)
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f

  # No?, so we redirect to our front web controller
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

Измените domain на свой собственный домен.

0 голосов
/ 30 апреля 2009

я бы создал модуль с именем admin ... затем, предположительно, с действием index, я бы поместил все, что у вас было, в ваш файл admin.php.

тогда в вашем файле routing.yml просто укажите yourdomain.com/admin на admin / index .... таким образом вы сохраните все в пределах фронт-контроллера Symfony

Andrew

0 голосов
/ 14 апреля 2009

Вот несколько основных способов сделать это:

Либо дамп admin.php в папку с именем ' admin ' в корне www.domain.com, и переименование admin.php в index.php . (Самое простое решение)

Конечно, таким образом, вы должны настроить все относительные ссылки в admin.php на один уровень вверх (добавьте '../' к началу всех относительных URL-адресов, которые должны работать), а также все абсолютные ссылки отражают изменения.

Что касается вашего admin.domain.com, вам следует связаться с вашим поставщиком веб-хостов / доменных имен, чтобы настроить для вас поддомен.


Или, если ваш веб-хост разрешает файлы .htaccess, вы можете написать правило mod_rewrite.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...