使用 Homestead/Vagrant 搭配 Symfony
为了开发 Symfony 应用,您可能需要使用虚拟开发环境,而不是内置服务器或 WAMP/LAMP。 Homestead 是一个易于使用的 Vagrant Box,可以快速启动并运行虚拟环境。
提示
由于 Symfony 中存在大量文件系统操作(例如,更新缓存文件和写入日志文件),Symfony 可能会显著变慢。为了提高速度,请考虑将缓存和日志目录覆盖到 NFS 共享之外的位置(例如,使用 sys_get_temp_dir)。您可以阅读这篇博文,了解更多关于加速 Vagrant 上 Symfony 的技巧。
安装 Vagrant 和 Homestead
在使用 Homestead 之前,您需要按照 Homestead 文档中的说明安装和配置 Vagrant 以及 Homestead。
设置 Symfony 应用
假设您已在本地系统的 ~/projects/symfony_demo
中安装了 Symfony 应用程序。您首先需要 Homestead 同步此项目中的文件。运行 homestead edit
以编辑 Homestead 配置并配置 ~/projects
目录
1 2 3 4
# ...
folders:
- map: ~/projects
to: /home/vagrant/projects
您电脑上的 projects/
目录现在可以在 Homestead 环境中的 /home/vagrant/projects
访问。
完成此操作后,在 Homestead 配置中配置 Symfony 应用程序
1 2 3 4 5
# ...
sites:
- map: symfony-demo.test
to: /home/vagrant/projects/symfony_demo/public
type: symfony4
type
选项告诉 Homestead 使用 Symfony nginx 配置。当使用 type symfony2
时,Homestead 现在支持带有 app.php
和 app_dev.php
的 Symfony 2 和 3 Web 布局;当使用 type symfony4
时,则支持 index.php
布局。
最后,编辑本地机器上的 hosts 文件,将 symfony-demo.test
映射到 192.168.10.10
(这是 Homestead 使用的 IP)
1 2
# /etc/hosts (unix) or C:\Windows\System32\drivers\etc\hosts (Windows)
192.168.10.10 symfony-demo.test
现在,在您的 Web 浏览器中导航到 http://symfony-demo.test
,尽情享受开发您的 Symfony 应用程序吧!
另请参阅
要了解 Homestead 的更多功能,包括 Blackfire Profiler 集成、自动创建 MySQL 数据库等,请阅读 Homestead 文档的“日常使用”部分。