Laravel——Web开发实战之路(二)

21 篇文章 1 订阅
10 篇文章 0 订阅

Laravel——Web开发实战之路(二)

@[Laraval|后端|框架]


win下环境配置(2)

Homestead.yaml文件配置

在Homestead/目录下打开Homestead.yaml文件,大概长这样

---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Code
      to: /home/vagrant/Code

sites:
    - map: homestead.test
      to: /home/vagrant/Code/Laravel/public

databases:
    - homestead

# blackfire:
#     - id: foo
#       token: bar
#       client-id: foo
#       client-token: bar

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

1.虚拟机设置

ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox

这部分都是统一的,不需要改动

2.SSH密钥

authorize 选项是指派登录虚拟机授权连接的公钥文件,此文件填写的是主机上的公钥文件地址,虚拟机初始化时,此文件里的内容会被复制存储到虚拟机的 /home/vagrant/.ssh/authorized_keys文件中,从而实现 SSH 免密码登录。在这里我们默认填写即可。

authorize: ~/.ssh/id_rsa.pub

keys 是数组选项,填写的是本机的 SSH 私钥文件地址。虚拟机初始化时,会将此处填写的所有 SSH 私钥文件复制到虚拟机的 /home/vagrant/.ssh/ 文件夹中,从而使虚拟机能共享主机上的 SSH 私钥文件,使虚拟机具备等同于主机的身份认证。

keys:
    - ~/.ssh/id_rsa

同时也可用于连接github,具体实现可以看我的git教程

教程中说需要将公钥和私钥一起同步到虚拟机中,但是我忘了做这一项,目前还没碰到问题
意思是说,keys设置成这样

 keys:
    - ~/.ssh/id_rsa
    - ~/.ssh/id_rsa.pub

生成SSH key
如果已经有,就可以跳过了,如果没有,请参照git教程中生成SSH Key进行操作

3.共享文件夹配置

folders:
    - map: ~/Code
      to: /home/vagrant/Code
  • map 对应本机文件夹
  • to对应Homestead上的文件夹
    无需改动,接下来创建~/Code文件夹
    在Git bash中使用命令
cd ~
mkdir Code

4.站点配置

站点配置允许你在主机里,通过域名来访问虚拟机里的 Laravel 应用。如下面 sites 配置所示,将 homestead.test 映射到一个 Laravel 项目的 public 目录上。这一行配置,会命令 Homestead 为我们新建一个 Nginx 站点,并且把 Web Root 配置到指定目录下。Laravel 应用的 Nginx 站点 Web Root 配置,默认就是在根目录下的 public 目录。
先统一设置为

sites:
    - map: homestead.test
      to: /home/vagrant/Code/Laravel/public

另外,为了绑定虚拟机站点,请在C:/windows/System32/Drivers/etcc/host文件最后加入一句
192.168.10.10 homstead.test
设置好后,即可用浏览器访问站点homestead.test

5.数据库配置

配置数据库名称,这里默认即可

databases:
    - homestead

运行Vagrant

Vagrent常用命令:

命令行说明
vagrant init初始化 vagrant
vagrant up启动 vagrant
vagrant halt关闭 vagrant
vagrant ssh通过 SSH 登录 vagrant(需要先启动 vagrant)
vagrant provision重新应用更改 vagrant 配置
vagrant destroy删除 vagrant

1.启动Homestead
git中输入

cd ~/Homestead && vagrant up

配置完后,再使用ssh链接

vagrant ssh

成功后就是这样
这里写图片描述
在虚拟机输入exit即可退出
尝试关闭vagrant

这样 ,基本就配置完了

第一个Lavarel程序

打开Homestead 虚拟机,命令行敲入

$ cd ~/Code
$ composer create-project laravel/laravel Laravel --prefer-dist "5.5.*"

生成Lavarel项目速度很快,如果一分钟不见响应,这个我也碰到了,不过没关系
- 强制退出git,重新打开虚拟机
- 这个时候应该是打不开的,会让你指定虚拟机,按提示敲入vagrant global-status找到虚拟机id打开即可
- 对应id卸载虚拟机,重新安装配置,仔细看界面上显示的log信息
- 可能会有两个错误,一个warning说是找不到metadata,json文件,另一个是版本不太匹配
- 我是第一个问题,也就是一开始我说的那个坑
- 重新安装,不删那个文件即可

再次输入命令,即可新建一个项目,打开homestead.test即可看到页面

文件夹结构

打开~/Code/Lavarel/路径,可以看到结构

文件夹名称简介
app应用程序的业务逻辑代码存放文件夹
app/Console存放自定义 Artisian 命令文件
app/Http/Controllers存放控制器文件
app/Http/Middleware存放「中间件」文件
bootstrap框架启动与自动加载设置相关的文件
composer.json应用依赖的扩展包
composer.lock扩展包列表,确保这个应用的副本使用相同版本的扩展包
config应用程序的配置文件
database数据库操作相关文件(数据库迁移和数据填充)
node_modules存放 NPM 依赖模块
package.json应用所需的 NPM 包配置文件
phpunit.xml测试工具 PHPUnit 的配置文件
public前端控制器和资源相关文件(图片、JavaScript、CSS)
readme.md项目介绍说明文件
resources应用资源
resources/assets未编译的应用资源文件(图片JavaScript、CSS)
resources/lang多语言文件
resources/views视图文件
routes/api.php用于定义 API 类型的路由
routes/channels.php事件转播注册信息
routes/console.php用于定义 Artisan 命令
routes/web.php用于定义 Web 类型的路由(重点,大部分情况下本书会用到)
server.php使用 PHP 内置服务器时的 URL 重写(类似于 Apache 的 “mod_rewrite” )
storage编译后的视图、基于会话、文件缓存和其它框架生成的文件
storage/app目录可用于存储应用程序使用的任何文件
storage/framework目录被用于保存框架生成的文件及缓存
storage/logs应用程序的日志文件
tests应用测试相关文件
vendor Composer依赖模块
webpack.mix.jsLaravel 的前端工作流配置文件
yarn.lockYarn 依赖版本锁定文件
.gitignore被 Git 所忽略的文件
.env环境变量配置文件

第一行 Laravel 代码

Laravel 在项目创建时会自动为我们生成一个 welcome.blade.php 文件,这个文件将被用于渲染 Laravel 的默认视图。现在,让我们打开该文件,复制替换为自己的HTML代码即可
resources/views/welcome.blade.php

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值