引言:

  最近开始学习laravel框架,了解到有个laravel homestead的box,开发起来非常方便快捷,于是就准备开始配置homestead虚拟开发环境了

什么是Homestead

  要想学会使用一款工具,那么必须要先学习这款工具到底能做什么,否则学习就是没有意义的,根据官方文档是行的解释: Laravel   Homestead 是一个官方的、预封装的Vagrant“箱子”,它提供给你一个奇妙的开发环境而不需要你在本机上安装PHP、HHVM、web服务器和其它的服务器软件。不用再担心搞乱你的操作系统!Vagrant箱子是完全可支配的。如果出现故障,你可以在几分种内完成销毁和重建箱子!
  于是按照文档上的安装步骤,开始进行安装,理论上来说,应该都能轻松的安装上homestead,但是我想说的是,文档并不会适用于所有的场景。于是我踩了许多坑。

准备工作

  在安装Laravel Homestead之前,要先准备两个软件,

  <a target="_blank" src="http://www.vagrantup.com/downloads.html">vagrant</a>,Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境,

  <a target="_blank" src="https://www.virtualbox.org/wiki/Downloads">virtualBox</a>,VirtualBox 是一款开源虚拟机软件。

  Homestead就是vagrant box,而vagrant box 必须配合vagrant 和virtualBox一起,才能一起工作,所以准备工作必须不能少啊。

安装vagrant&virtualBox

  安装软件很简单,在windows环境下,这两个软件都是傻瓜式一键安装的,各种下一步即可

添加homestead box

  官方文档中有介绍,安装hometead需要添加homestead的box,命令行下使用命令

  vagrant box add laravel/homestead

  然后只要花费一些时间,就能添加好homestead的box了,但是想象和现实总是有很大的差距,我添加的时候,看到的是这样的:

  

  我大天朝的网络就是这样,不仅有长城那么长的墙,还有巨大的传输时延,访问国外的站点都是如履薄冰,下载大文件基本和天方夜谭是差不多形式的,那么接下来就是寻找解决方案了

  解决方案:

  一、配置VPN代理,这个东西免费的不好使,收费的用不起,pass

  二、晚上睡觉前,下载个离线的箱子,然后通过添加本地盒子的形式在添加homestead(这个办法非常适合我这种又懒又穷的人),下载离线箱子的url可以命令行中找到,也就是上图,Downloading后面的url

    https://atlas.hashicorp.com/laravel/boxes/homestead/versions/0.5.0/providers/virtualbox.box,

    我整理了一下前辈的心得,根据他们的经历,使用迅雷或者其他什么支持断点续传的下载工具,下载的文件有损坏,但是我没有去验证,我是使用火狐浏览器自带的下载插件进行下载的,没有遇到前辈们所说的那些问题。

    下载之后,我得到了一个叫做hc-download的文件,开始我还觉得我下载错了文件,怎么叫hc-download而不是叫做homestead.box,事实证明确实就是叫hc-download,然后运行命令

    vagrant box add laravel/homestead hc-download

    (ps:有些前辈说要把文件hc-download改名为homestead.box才能添加成功,但是我直接就添加成功了,并且根据我对计算机文件的理解,文件的格式不应该由后缀名来决定的,所以改名应该不是必须的)

获取Homestead命令行工具

  接下来需要获取Homestead命令行工具,这里面包含了homestead的一些配置,在官方文档上的介绍,我们可以通过composer(Composer 是 PHP5以上 的一个依赖管理工具)来获得,执行命令(在这之前,必须已经安装了composer工具才能使用)

    composer global require "laravel/homestead=~2.0"

  但是我感觉composer下载起来比较慢,于是还有另外一种更快的方法,通过下载homestead托管在github的仓库直接克隆即可,不过需要安装git客户端

  git clone https://github.com/laravel/homestead.git

  如果既不想安装git,也不想安装composer,那么直接找一个下载过的前辈,让他用邮箱发一份也是完全没有问题的,我通过git克隆下载的homestead是这些文件

  

  如果是通过composer安装的,目录下还会有一个vendor的目录,然后就需要初始化homestead的配置了

  windows命令下执行init.bat,或者直接到这个目录,鼠标点击init.bat也是OK的,如果用的是git,那么就需要执行./init.sh了

  执行完之后,在我的C:\Users\Administrator目录下生成了一个.homestead目录,这个目录下有三个文件

  ,里面的配置后期可以根据需要手动进行修改

启动homestead

  一切准备就绪了,接下来只要在命令下到homestead(上图中init.bat所在的目录),执行命令

  vagrant up

  然后就能愉快的玩耍。。。了。。。么???

  事情还没完呢,执行vagrant up启动的时候,它还是会选择官方的源进行下载和安装,于是一切又回到了原点,但是木有关系,既然它会自动选择官方的源进行box的安装,那么就一定有控制的地方,让它从本地添加的盒子进行安装,于是找到了scripts目录下的homestead.rb文件,打开之后找到

  config.vm.box_version = settings["version"] ||= ">= 0.4.0"

  这样一行代码,然后在行首加上#号注释掉它之后,重新启动vagrant up,然后终于可以愉快的玩耍了!

转载于:https://www.cnblogs.com/crisenchou/p/5966070.html

Laravel Homestead安装笔记相关推荐

  1. Laravel Homestead安装和使用

    1.先安装vagrant和 VirtualBox.git.composer 1.1.Virtualbox:https://www.virtualbox.org/ 1.2.Vagrant:https:/ ...

  2. laravel安装 笔记

    http://laod.cn/hosts/2015-google-hosts.html 谷歌FQIP laravel安装和设置流程 1安装composer , VirtualBox和Vagrant 下 ...

  3. laravel安装笔记 (转)

    一.安装composer 安装之前将\php\php.ini文件中的php_openssl.dll扩展库开启,否则composer在安装过程中会出现错误提示. (我在安装过程中发现apache目录下的 ...

  4. laravel之homestead安装教程

    Homestead 最佳本地开发环境 Homestead Win Laravel 致力于让整个 PHP 开发体验变得愉快, 包括你的本地开发环境. Vagrant 提供了一种简单,优雅的方式来管理和配 ...

  5. Laravel Homestead的安装和使用

    Homestead Homestead是什么 安装 1.打开Git Bash 进入E:\HashiCorp\Vagrant 2.1 添加Homestead Vagrant Box 到 Vagrant ...

  6. 手把手教你Homestead安装,并填坑!!

    来源:http://www.jianshu.com/p/ae9d1261bbd8 话说作为laravel的开发者,你听说Homestead应该很久了,可是官方推荐的开发环境在国内为什么鲜有人用?我这几 ...

  7. homestead 安装mysql8_homestead安装php redis扩展

    看到本文,你应该遇到了homestead中php环境没有redis扩展的窘境,网上的教程也不通用,因为那些教程都只是针对单一机器单一版本php环境下的安装方法,而homestead安装了多个php版本 ...

  8. php ssl证书 laravel,php – 无法添加laravel / homestead box. “SSL证书问题……”.视窗...

    我在另外两台机器上安装了laravel宅基地,之前从未见过这个问题.我搜索和搜索,实施了大量的建议修复,没有什么对我有用. 我安装了虚拟盒子和流浪汉,我陷入了第一道障碍: vagrant box ad ...

  9. Homestead安装

    安装软件 安装vargrant: 安装Virtualbox 安装git 导入box 下载homestead.box,点击下载. 新建了一个文件夹名为homestead,然后将下好的box重命名为hom ...

最新文章

  1. [git]通过commit_id找回文件
  2. Flask学习 黑马程序员-6节课入门Flask框架web开发视频(中途撤退,寻找py3教程)
  3. Newbe.ObjectVisitor 0.2.10 发布,更花里胡哨
  4. for-each循环
  5. OC开发_Storyboard——绘制和视图
  6. 对C语言实验报告的建议,c语言实验报告.docx
  7. 移动开发不能不知道的事-meta
  8. 戴尔软件部门第一弹 收购备份公司AppAssure
  9. Spring Data JPA持久层中的一对一和一对多
  10. win7升级win10激活指南——查看预装Win7/8/8.1电脑内置系统激活密钥(OEM Key)方法
  11. 信息系统项目管理师考试怎么复习最有效?
  12. 汽车牌照 (license) C++
  13. L1-009 N个数求和(解决测试点三错误)
  14. MYSQL_ 表结构设计和数据类型优化
  15. 用pymongo对mongoDB增删改查(CRUD)
  16. 工程院院士李德毅:汽车正在被软件所改变
  17. mysql权限层级体系_数据库mysql有哪些权限?层级有哪些?
  18. Linux无界面创建Oracle数据库实例
  19. 从搜狐的开放的接口里读取数据
  20. mysql qbe_掌握这13个MySQL索引知识点,让你面试通过率翻倍

热门文章

  1. package.json和bower的参数解释
  2. http://jingyan.baidu.com/article/2009576193ee38cb0721b416.html
  3. python随机产生10个数然后前5个升序后5个降序_编写程序,生成包含 20 个随机数的列表,然后将前 10 个元素升序排列,后 10 个元素降序排列,并输出结果。_学小易找答案...
  4. ElasticSearch多字段查询best_fieldsmost_fields
  5. Spark源码分析之TaskSetManager分析
  6. KafkaController 分区Rebalance平衡机制
  7. mysql修改存储引擎报错_修改mysql存储引擎备份数据库报错及解决方案
  8. oracle 取记录最大的那条记录_新记录!国内跨高速铁路最大、吊装高度最高的钢横梁顺利吊装到位...
  9. java sort类_java中sort()方法的用法
  10. ftp安装包_【干货分享】原来cisco通过FTP,TFTP系统升级是这样做的?