我使用bin/console server:run
(或app/console
用于Sf2目录结构)来使用Symfony2开发应用程序。不幸的是,在多个系统上,它最终会死亡(通常是因为段错)。
我尝试过多个PHP版本和操作系统(在Ubuntu 14.10和15.04,OS X 10.9和10.10上为5.5,5.6)。
我报告了错误并继续工作,但我很恼火,我不得不经常手动重启服务器。
我尝试做这样的事情作为我的构建目标':
until bin/console server:run -v; do \
sleep 1; \
done
但遗憾的是,它有时只能起作用(我还没确定它无法重启服务器的原因)。
您是否可以推荐另一种方法来保持此服务器的优化,而不会影响全局服务/守护神?
答案 0 :(得分:1)
您可以使用一些监督软件来确保流程始终在运行。查看supervisord(http://supervisord.org/)
您必须指定要运行的类似任务:
[program:server]
command=bin/console server:run -v
directory=/var/www/symfony-dir
autostart=true
autorestart=true
有关http://supervisord.org/configuration.html#program-x-section-settings
上的标记和示例的更多信息正如你所说,内置服务器不应该用于生产:)
答案 1 :(得分:1)
我设法使用forever.js来实现这一点。
这不是什么花哨的事,只是
forever start server.sh # sh contains bin/console server:run -v
This question证明非常有用,因为我还可以包括资产观察和其他一些事情。
答案 2 :(得分:0)
这是一个老问题,但是我在Windows上的新Symfony 4服务器上也遇到了同样的问题。 这是我的解决方案:https://gist.github.com/banasmat/ef87cd236e248b6287337b6ba30df5c0