盒子
盒子
文章目录
  1. 0.前言
  2. 1.我的服务器
  3. 2.准备工作
  4. 3.安装Composer
    1. 3.1.下载Composer
    2. 3.2.局部安装
    3. 3.3.全局安装
  5. 4.安装Laravel
    1. 4.1.通过 Laravel 安装器
    2. 4.2.通过 Composer 创建项目
    3. 4.3.如何让服务器显示Lavarel主页
  6. 5.坑记
  7. 6.Windows平台搭建 Laravel 环境
  8. 7.总结

最不知所云的Laravel框架安装坑记

0.前言

  网上其实有很多过来人的教程,可是由于技术更迭太快,很多教程已经跟最新的Laravel脱轨了。大家不妨参考一下我的踩坑经历,不然枉费了一天的时间,不甘心啊。

1.我的服务器

  我的服务器是安装的LAMP套装,即 Linux + Apache2 + MySql + PHP7.0。满足最新的Laravel框架的基本要求。

2.准备工作

  根据Laravel官方文档所说,建议您使用Homestead作为您本地的Laravel开发环境。
  但是,如果您不使用Homestead,则需要确保您的服务器符合以下要求:

  • PHP> = 7.0.0
  • OpenSSL PHP扩展
  • PDO PHP扩展
  • Mbstring PHP扩展
  • Tokenizer PHP扩展
  • XML PHP扩展
      安装相关扩展,可以参考iloveyougirls的ubuntu16.04安装PHP7.0的laravel必须扩展,这里就不再介绍。

3.安装Composer

安装前请务必确保已经正确安装了 PHP。打开命令行窗口并执行 php -v 查看是否正确输出版本号。

3.1.下载Composer

  打开命令行并依次执行下列命令安装最新版本的 Composer:

1
2
3
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"

  执行第一条命令下载下来的 composer-setup.php 脚本将简单地检测 php.ini 中的参数设置,如果某些参数未正确设置则会给出警告;然后下载最新版本的 composer.phar 文件到当前目录。
  上述 3 条命令的作用依次是:

  • 下载安装脚本 - composer-setup.php - 到当前目录。
  • 执行安装过程。
  • 删除安装脚本。

3.2.局部安装

  上述下载 Composer 的过程正确执行完毕后,可以将 composer.phar 文件复制到任意目录(比如项目根目录下),然后通过 php composer.phar 指令即可使用 Composer 了!

3.3.全局安装

  全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。

  • Mac 或 Linux 系统:
      打开命令行窗口并执行如下命令将前面下载的 composer.phar 文件移动到 /usr/local/bin/ 目录下面:

    1
    sudo mv composer.phar /usr/local/bin/composer
  • Windows 系统:

    1、找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。
    2、将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。
    3、在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。

    1
    @php "%~dp0composer.phar" %*

  最后重新打开一个命令行窗口试一试执行 composer –version 看看是否正确输出版本号。

  • 最后

    提示:不要忘了经常执行 composer selfupdate 以保持 Composer 一直是最新版本哦!

4.安装Laravel

  Composer安装倒是很简单,但Laravel的安装就是坑的所在。
  Laravel 利用 Composer 来管理依赖。所以,在使用 Laravel 之前,请确保你的机器上安装了 Composer。

4.1.通过 Laravel 安装器

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

1
composer global require "laravel/installer"

  确保 $HOME/.composer/vendor/bin 目录(或你的操作系统的等效目录)已经放在你的环境变量 $PATH 中,以便系统可以找到 laravel 的可执行文件。通过以上安装composer,我本地的要添加的composer目录为:

1
/home/jiacy/.config/composer/vendor/bin

  因此我把此bin目录添加到/etc/profile 和 ~/.bashrc文件中:

1
export PATH=/home/jiacy/.config/composer/vendor/bin:$PATH

  执行source /etc/profile 和source ~/.bashrc让环境立即生效。
  一旦安装完成后,可以在终端$ laravel -v
  可以使用 laravel new 命令在你指定的目录中建立一份全新安装的 Laravel 应用。例如: laravel new blog 命令会在当前目录下建立一个名为 blog 的目录, 此目录里面存放着全新安装的 Laravel ,并且所有依赖包也已经安装好了。此方法的安装速度会比通过 Composer 安装快很多。

4.2.通过 Composer 创建项目

  或者,你还可以通过在终端中运行 create-project 命令来安装 Laravel:

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

4.3.如何让服务器显示Lavarel主页

  安装 Laravel 之后,你要将 Web 服务器的根目录指向 public 目录。例如,在/etc/apache2/site-availible目录下新建一个.conf文件,并将虚拟主机的域名自定义(例如我自定义为 test.jiacyer.com )。该目录下的 index.php 文件将作为所有进入应用程序的 HTTP 请求的前端控制器。

5.坑记

  看起来是不是并不难?然而我却遇到了如下的事情。
  各种 Cannot create cache directory 或者 权限不足 问题。如下:

  然后,就是各种安装过程中的Killed,明显是安装失败了,如下:

  听从大佬的建议,重启了服务器,然后关闭apache服务和mysql服务,重新安装 Laravel 并出现以下报错:

  是由于缺少 php7.0-zip 扩展造成的,使用如下指令安装即可:

1
sudo apt-get install php7.0-zip

  最后,执行 composer global require “laravel/installer” 重新安装 Laravel 终于成功,如下图所示:

  laravel -v 即可查看 Laravel 版本。通过 laravel new blog 即可新建项目:

  网页虽然能打开了,然后报出了一个新的问题:

1
The stream or file /var/www/test/test/storage/logs/laravel.log could not be opened: failed to open stream: Permission denied


  google轻松找到解决方案:

1
2
3
4
5
6
php artisan cache:clear
chmod -R 777 app/storage # for laravel < 5.4
chmod -R 777 storage/ # for laravel >= 5.4
composer dump-autoload

  终于在浏览器中输入 test.jiacyer.com 就可访问到主页:

6.Windows平台搭建 Laravel 环境

  其实,基本环境都是一样的。例如,我的环境是 Windows10 + Apache2.4 + PHP7.0 + MySql。这里就不讲解这些东西的基本搭建了,附上 Sanchi 的windows下PHP环境的搭建,另外推荐使用 PhpStorm 作为IDE,可以查考 ruglcc 的为 PhpStorm 添加 Laravel 代码智能提示功能,为IDE配上Laravel的代码提示功能。
  安装 Apache 过程中,可能出现端口被占用的情况,这是因为VM虚拟机占用了该端口,可以在任务管理器-服务中关闭对应Pid的服务。
  接下来的过程,就跟之前 Linux 的比较接近了。Windows 安装 Composer 可以参考 不二之家 的Windows环境下Composer的安装教程,之后的过程就可以跟上面的过程一致了,唯一多出来的步骤,就是把对应的指令加入到 Windows 环境变量 Path 中。最后安装 Laravel 即可。
  配置完后,可以配置 Windows 下的 Apache 虚拟主机,可以参考 谷震平 的 Apache—-windows下虚拟主机和虚拟目录的认识(Apache配置)
  至此,Windows 下的 Laravel 基本搭建完成,但有一个问题,Laravel 的路由功能无法正常使用,也不能报错。解决方案:

在apache conf开启rewrite模块,把下面这句话前面的#去掉。

LoadModule rewrite_module modules/mod_rewrite.so

7.总结

  感觉自己就是个菜鸡,一点点坑却需要数小时来填,心情复杂。

参考贴来源:
ubuntu16.04 安装composer和 laravel 作者:yanchengyc
Packagist/Composer 中国全量镜像

转载说明

转载请注明出处,无偿提供。

支持一下
感谢大佬们的支持