Laravel 新建Laravel项目

由于创建一个新的 Laravel 项目后,输入网址报错 “No input file specified”,所以记录创建Laravel项目流程,目的是新建Laravel项目成功,网页不再报错。

 

一、创建Laravel项目

重点:安装目录为Code文件夹

需要开启vagrant ssh后,到Code文件夹中进行安装

安装语句:composer create-project    laravel/laravel      blog57          5.7.*                     --prefer-dist

                                   创建项目              laravel项目       项目名称        安装版本为5.7      压缩模式

 

 

一、设置composer中国镜像

修改 composer 的全局配置文件(推荐方式)

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

composer config -g repo.packagist composer https://packagist.phpcomposer.com  

 

二、项目中再执行composer install

然后执行composer创建项目命令:composer create-project laravel/laravel blog 5.?.* --prefer-dist

 

正如官方文档所言,有两种方式可以创建一个新的 Laravel 项目,这两种创建方式都是从命令行执行的:第一种是通过全局的 Laravel 安装器另一种是通过 Composer 的 create-project 命令

执行这两种方式之前,都需要系统已经安装过 PHP 和 Composer(如果使用 Valet 或 Laragon 的话,则应该已经安装过了,如果使用的是 Homestead 或 Laradock 的话,宿主环境也要安装下,便于后续操作,如果未曾安装,请参考 Valet 和 Laragon 安装教程)。

第一种方式,使用 Laravel 安装器安装

安装 Laravel 安装器很简单,在命令行执行以下命令即可(如果已经安装过,会自动进行更新):

composer global require laravel/installer 

安装完成后,后续就可以通过 laravel new [项目名称] 来创建新的 Laravel 项目了:

laravel new blog

该命令会在当前目录下创建一个新的名为 blog 的应用:

使用 Composer create-project 命令安装

除此之外,还可以通过 Composer 自带的 create-project 命令来安装新应用:

composer create-project laravel/laravel blog --prefer-dist

效果和上面使用安装器安装的一样,使用这个方式安装的一个好处是可以安装旧版本的 Laravel 项目,比如要安装 5.6 版本的项目 blog56 ,可以这么做:

composer create-project laravel/laravel blog56 5.6.* --prefer-dist

 

由于需要创建稳定Laravel5.5版本,所以在定位到指定创建文件夹(Code文件夹,不用登录vagrant中也可创建)中,采用命令行:

composer create-project laravel/laravel blog 5.5.* --prefer-dist

创建laravel 5.5版本,等待自动安装

如创建不了,需要文件夹.ssh,文件路径在~目录中.ssh文件夹,拷贝至code文件夹中

 

二、创建后需要在Homestead中配置站点:

打开Homestead.yaml文件

sites:
    - map: homestead.app
      to: /home/vagrant/code/Laravel/public

sites下方添加新站点

databases:
    - homestead

在Homestead中新建数据库,并加入到databases下方

 

在C:\Windows\System32\drivers\etc 中找到hosts文件,

在最下方添加  192.168.10.10   xxxxx.test  保存

 

三、关键一步,重新加载Homestead.yaml文件

1、未退出虚拟机 Vagrant:

cd ~/Homestead && vagrant provision && vagrant reload

此处前提是: 未退出 虚拟机 Vagrant。

2、若已退出虚拟机, 则操作应如下:

  1. 打开虚拟机:

    cd ~/Homestead && vagrant up

  2. 重新加载 Homestead.yaml 配置:

    vagrant provision
    此时可以看到,修改后的 Homestead.yaml 配置在不断的重新加载。

3、可对第 (二) 项 进行简化操作如下:

cd ~/Homestead && vagrant up --provision
'--provision' 与 'vagrant provision' 相同

vagrant provision 是命令 Vagrant 重新加载 Homestead.yaml 配置;
vagrant reload 是重启虚拟机使更改生效。

 

四、查看站点是否配置成功

$ vagrant up  启动虚拟机后 

$ vagrant ssh  免密登录vagrant虚拟机

$ cd /etc/nginx/sites-available   查看nginx配置文件(/etc/nginx/sites-available/)

$ ls  执行命令,此时会显示已经配置的站点

再次在google 输入自己设定的网址,显示Laravel欢迎界面,即创建成功,可进行网站开发和API开发

 

五、发现的问题及解决办法

1、google浏览器输入网址时,报错:

Warning: require(/home/vagrant/code/blog57/public/../vendor/autoload.php......

Fatal error: require(): Failed opening required '/home/vagrant/code/blog57/public/../vendor/autoload.php' (include_path='.:/usr/share/php')

解决方法:使用composer install进行安装(没有安装过的情况下,以前安装过的话使用:composer update)

参考网址:https://www.e-learn.cn/index.php/content/wangluowenzhang/20347

 

2、新建Laravel 项目 .env中没有app-key

解决方法:在项目根目录,执行php artisan key:generate

 

3、报错:Unable to boot ApiServiceProvider, configure an API domain or prefix.

定位代码:

protected function registerConfig()
    {
        $this->mergeConfigFrom(realpath(__DIR__.'/../../config/api.php'), 'api');
 
        if (! $this->app->runningInConsole() && empty($this->config('prefix')) && empty($this->config('domain'))) {
            throw new RuntimeException('Unable to boot ApiServiceProvider, configure an API domain or prefix.');
        }
    }

解决方式:

在 .env 中,添加:

API_PREFIX=null
API_DOMAIN=api

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值