У меня есть пользователи, которые хотят запускать свои собственные проекты Symfony в своих домашних каталогах, но я не могу заставить Symfony работать должным образом. В моем конфигурационном файле Apache2 я установил userdir как:
UserDir sfproject / web
Но DocumentRoot должен быть:
/ вар / www / sfproject / веб
Это требование существует потому, что при развертывании кода в производственной среде мы не хотим изменять файл конфигурации Apache. И все будет в этом каталоге.
Проблема в том, что когда мы переходим в каталог пользователя: dev.server.com/~asdf
Symfony выдает ошибку 404: Пустой модуль и / или действие после анализа URL-адреса "/index.php" (/).
Я не понимаю в чем дело. Мы хотим, чтобы они видели свои индивидуальные проекты в своих домашних каталогах. Я смотрел, как некоторые другие люди настраивают Symfony в среде общего хостинга, но это не среда общего хостинга. Это выделенный сервер, и у меня есть root. Спасибо за помощь. Вот соответствующие части моей конфигурации Apache:
UserDir sfproject/web
<Directory "/usr/share/php/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
<VirtualHost *>
DocumentRoot "/var/www/sfproject/web"
DirectoryIndex index.php
<Directory "/var/www/sfproject/web">
AllowOverride All
Allow from All
</Directory>
Alias /sf /usr/share/php/data/symfony/web/sf
<Directory "/usr/data/symfony/web/sf">
AllowOverride All
Allow from All
</Directory>
</VirtualHost>