Мне было скучно по поводу моего большого URL http://localhost:8888/site/web/app_dev.php
, поэтому я создал apache virtual hosts
. Когда я пишу http://site.dev
в своем браузере, все работает, появляется мой сайт.
Проблема в том, что мой веб-сайт Symfony2, кажется, находится в режиме dev/prod, тогда как я указываю app_dev.php
(в .htaccess
).
У меня есть панель инструментов отладки (она показывает мне "среда разработки"), я могу делать дампы, но когда я изменяю файл (JS, Twig и т.д.), Я должен выполнять каждый раз, когда php app/console assetic:dump
(у меня раньше не было).
Мой виртуальный хост:
<VirtualHost *:80>
ServerName site.dev
ServerAlias www.site.dev
DocumentRoot /Applications/MAMP/htdocs/bo/web
<Directory /Applications/MAMP/htdocs/bo/web>
AllowOverride All
Order Allow,Deny
Allow from All
</Directory>
</VirtualHost>
EDIT: Я заметил, что сайт намного быстрее (site.dev), чем раньше (с URL-адресом localhost). Не знаю, почему, и до сих пор не знаю, как исправить php app/console assetic:dump
проблема с php app/console assetic:dump
...
Вам нужно добавить эту строку DirectoryIndex app.php
<VirtualHost *:80>
ServerName site.dev
ServerAlias www.site.dev
DocumentRoot /Applications/MAMP/htdocs/bo/web
DirectoryIndex app.php
<Directory /Applications/MAMP/htdocs/bo/web>
AllowOverride All
Order Allow,Deny
Allow from All
</Directory>
</VirtualHost>
У вас нет других проблем, но беспокоиться о длине URL? :)
Но серьезно, попробуйте запустить внутренний сервер PHP/Symfony с помощью следующей команды:
$ app/console server:start
Версия разработки вашего приложения будет находиться в http://localhost: 8000. Хороший и короткий.
Основываясь на вашем комментарии, выясняется, что фактическая проблема, с которой вы столкнулись, - это жесткие коды URL вашего JS. Решение для этого - https://github.com/FriendsOfSymfony/FOSJsRoutingBundle.
В принципе, этот пакет позволяет вам показывать маршруты в JS, чтобы вы избегали URL-адресов жесткого кодирования.