解释composer创建新的laravel项目的流程

121.png

    一.什么是Composer 

    长期以来,PHP的开源方法一直是项目级的,这意味着当我开源时,它是一个项目,例如一整套CMS,以及一个框架(例如Codeigniter)。为什么?非常重要的原因之一是您不容易拆卸。如果您进行拆卸,则没有有效的管理工具可以组合使用,从而导致拆卸的小模块无人问津。然后出现了Composer。它负责管理所有小的开源模块,并将它们有效地集成到一个完整的项目中。Composer是PHP代码依赖项管理工具之一。例如,您的项目需要使用PHPmail类库。只要遵循composer的格式,composer就会自动为您拉出代码库。在您的项目中。


    二、安装laravel

    首先,使用 Composer 下载 Laravel 安装程序:

    composer global require "laravel/installer"

    安装laravel

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

    查看laravel版本

    laravel -v


    三、创建新项目

    1.进入目录

    cd /data/www/


    2.创建新工程

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

    该行命令会创建一个叫做blog的项目。ps:已经跑过一次该行代码,再次运行会导致terminal卡住,什么都不显示


    3.查看工程目录

    进入到工程目录下

    subl .


    4.后端关注composer.json文件(直接位于blog目录下)

    composer.json描述了本项目有哪些依赖

    “require”里面看到本项目使用的是laravel框架5.5

    然后层层依赖下去


    5.前端关注package.json

    描述了主要靠mpm依赖包

    例如

    axios用来发起前端业务请求

    cross-env webpack命令

    注意:bootstrap默认配置的是sass源码(/resources/assets/sass/app.scss)


    6.安装nmp

    sudo apt install npm

    npm i

    安装完成后可以看到,前端依赖的包都放在新生成的node_modules目录下


    7.项目创建好后,可以看到已经生成了.env文件

    8.浏览器查看本地网页

    首先配置好hosts文件(hosts文件位置:/etc/hosts)

    127.0.1.1 l.blog.com

    浏览器输入l.blog.com


    9.查看nginx配置(nginx不负责解析php)

    sudo nginx -t

    subl nginx目录地址

    nginx配置文件是nginx的入口,配置http的基本配置和站点的配置,其中可以引用配置

    需要在nginx配置好server才能访问网站,比如设置server_name *.blog.com 在我们输入l.blog.com的时候就会自动匹配到server,然后会去root 下/data/www/blog.com/public目录下找php默认页面,就是index.php找执行,于是换成laravel框架,我们的网站就可以访问啦。

    此处两个很重要的文件,enable-php.conf和enable-laravel.conf

    enable-php.conf负责配置与php的通讯

    enable-laravel.conf是手写的,可在laravel文档中查询如何使网站成为符合laravel的文档

    location / {

    try_files`$uri`$uri/`/index.php$is_args$args;

    }


    四、Q&A

    问:出现unexpectedValueException:the stream or file “/data/www/blog.com/storage/logs/laravel.log”could not be open:failed to  open stream:Permission denied

    答:说明已经进入laravel框架的范畴

    更改文件夹权限sudo chmod -R 777 . 注意:此处R大写


    问:载入网站的时候一直转圈

    答:按F12检查网站,network发现有一项time一直处于pending状态,其他任务都完成

    光标移上去显示是fonts.googleapis.com

    是views上一直在引用谷歌的字体,找到views目录下的welcome.blade.php

    把此处的raleway字体注释掉就ok

    第二种,bootstrap引用的谷歌字体导致转圈

    找到/resources/assets/sass/app.scss

    发现bootstrap默认在使用raleway的字体库,是谷歌的东西,把它注释掉就ok

    注意:此处修改的是sass源码,需要重新编译


    npm run prod


    问:浏览器进入l.blog.com后,将显示LNMP一键安装软件包页面

    答:这是因为未配置nginx.conf文件

     subl / usr / local / nginx / conf /  nginx.conf 

    重新配置服务器ps:最好将所有项目放在一个目录中并养成良好的习惯。 项目路径在此处易于编写。  

    配置服务器后,检查配置文件。  

     sudo nginx -s reload 

     sudo nginx -t 

    检查正确后,即可访问项目

我来说两句

0 条评论

推荐阅读

  • 响应式布局CSS媒体查询设备像素比介绍

    构建响应式网站布局最常见的是流体网格,灵活调整大小的站点布局技术,确保用户在使用的幕上获得完整的体验。响应式设计如何展示富媒体图像,可以通过以下几种方法。

    admin
  • 提升网站的性能快速加载的实用技巧

    网站速度很重要,快速加载的网站会带来更好的用户体验、更高的转化率、更多的参与度,而且在搜索引擎排名中也扮演重要角色,做SEO,网站硬件是起跑线,如果输在了起跑线,又怎么跟同行竞争。有许多方法可提升网站的性能,有一些技巧可以避免踩坑。

    admin
  • 织梦CMS TAG页找不到标签和实现彩色标签解决方法

    织梦cms是我们常见的网站程序系统的一款,在TAG标签中常常遇到的问题也很多。当我们点击 tags.php 页的某个标签的时候,有时会提示:“系统无此标签,可 能已经移除!” 但是我们检查程序后台,以及前台显示页面。这个标签确实存在,如果解决这个问题那?

    admin
  • HTML关于fieldset标签主要的作用

    在前端开发html页面中常用的标签很多,今天为大家带来的是关于HTML中fieldset标签主要的作用说明,根据技术分析HTML

    admin

精选专题