近期有个Laravel开发项目,需要搬到CentOS服务器做测试。

先说下项目的配置:

Laravel版本5.5 --确定了php7.0以上;

CentOS 7.0或以上。

lnmp 1.5版

以下是搬迁的过程:

1、服务器安装lnmp1.5:

  lnmp安装包是懒人最方便布署网站服务器的工具了。比较介意的也可以自己一手编译安装。

  安装过程在官网写得很清楚,考虑用无人自动化安装方式:https://lnmp.org/faq/v1-5-auto-install.html。安装前最好先使用screen,防ssh在安装过程中自动断开。

  我是安装了lnmp,使用nginx,不使用apache。

2、添加虚拟主机:

怎么添加,官网有介绍:https://lnmp.org/faq/lnmp-vhost-add-howto.html

  添加时写的参数:

  (1)域名:指向的域名(或自定义一个假域名)

  (2)网站目录:不输入直接回车,那么默认就是/home/wwwroot/域名名称

(3)rewrite规则:y,需要。然后输入laravel回车。

   (4)开启访问日志:y, 回车

(5) 访问日志名称:直接回车,默认;

(6) 数据库建立:n, 否,自己建。

(7)SSL功能:n,不需要。

  

3、搬项目文件到网站目录:

   可以使用sftp方式,也可以通过lnmp安装ftp服务器通过ftp上传。上传完后自己通过 http://服务器ip/phpmyadmin来进行建立数据库和用户账号。完事后再修改项目下的.env文件下的数据库配置。

4、修改网站目录指向:

Laravel项目的网站目录应该是项目下的public目录,所以要修改vhost文件:/usr/local/nginx/conf/vhost/域名.conf

将root 指向的目录指向为项目下的public目录。然后reload下nginx。

5、网站目录权限设置:

(1)将整个网站目录改为www:www所属:chown www:www -R /home/wwwroot/网站目录

(2)设置项目下的storage目录为可写:chmod -R 775 /home/wwwroot/网站目录/storage/

(3)   由于Laravel项目的实际上传目录为storage/app/public,所以要将此目录做软链接到public目录下。这里我们进入到项目目录下,执行:php artisan storage:link。

此命令执行时出错,原因是php.ini将某些php函数屏蔽了,修改php.ini文件的disable_functions配置,移除需要使用的函数,修改好保存,再reload一次php-fpm。重新执行上面的命令即可。

6、清空缓存:php artisan cache:clear

7、安装redis:使用lnmp就可以安装了,官网有说明,这里略过不写。

8、composer更新第三方vendor组件:在项目目录下执行composer update时,提示缺少fileinfo的php扩展。这时需要手动编译安装fileinfo扩展了。

我们在第1步时就用了wget自动下载了lnmp安装包,命令行有解压此安装包,里面就有php的源码,我们可以通过源码来编译安装fileinfo扩展。这里有篇文章详述了安装过程:https://blog.51cto.com/bella41981/1970723

安装lnmp1.5,搬迁Laravel项目到服务器笔记的更多相关文章

  1. 安装配置开源的laravel项目到本地环境

    前言 从https://github.com 上down了一个laravel项目安装到本地环境的时候,其中遇到一些问题,这里梳理并记录下整个流程. git上下载项目代码,部署laravel项目的时候会 ...

  2. Laravel项目Linux服务器部署

    laravel项目本地开发,一切正常.部署到服务器,首页都加载不出来,查了n多教程,各种方法姿势都试过了,还是不行. 功夫不负有心人,最后终于找到了问题所在,在此做个记录,铭记教训. 排查错误一定要: ...

  3. lnmp1.5部署laravel项目

    毕竟laravel是十分有魅力的框架,忍不住想要深入的了解她,费话不多说,直入正题吧 1.composer切换国内镜像源:composer config -g repo.packagist compo ...

  4. Laravel 从入门到精通 创建并运行一个新的 Laravel 项目

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

  5. 阿里云服务器部署php的laravel项目,在阿里云买ECS 搭建 Linux+Nginx+Mysql+PHP环境的

    在阿里云买ECS的时候选择自己习惯的镜像系统,我一般都是使用Linux Ubuntu,所以,以下的配置都是在Ubuntu 14.04稳定支持版的环境中搭建Linux+Nginx+Mysql+PHP环境 ...

  6. laravel项目使用appnode部署linux系统到阿里云服务器流程记录(待补充)

    使用 SSH 连接工具,如 PuTTY.XShell.SecureCRT 等,连接 Linux 服务器后(阿里云服务器命令行内直接输入appnode安装命令,版本:mysql选5.7.php选7.2) ...

  7. laravel项目thinksns-plus安装出现RuntimeException Symlink from * to * failed错误

    今天xshell安装thinksns-plus的laravel项目时出现了一个错误, [RuntimeException] Symlink from "/root/www.z5w.net/t ...

  8. laravel项目安装与重要目录文件说明(一)

    一.laravel创建项目的二种方式: 1.通过laravel安装器,进行创建 composer global require laravel/installer laravel new 项目名 co ...

  9. laravel项目composer安装

    1.下载 Composer (https://pkg.phpcomposer.com/#how-to-install-composer) 安装前请务必确保已经正确安装了 PHP.打开命令行窗口并执行 ...

随机推荐

  1. 机器学习笔记(三)Logistic回归模型

    Logistic回归模型 1. 模型简介: 线性回归往往并不能很好地解决分类问题,所以我们引出Logistic回归算法,算法的输出值或者说预测值一直介于0和1,虽然算法的名字有“回归”二字,但实际上L ...

  2. mycat练习笔记

    学习要趁早,装逼莫等老. 刚刚开始接触到mycat, 当然要学习一下了.拿它来设置 mysql 的读写分离,分库分表,以及集群等. 官网: http://www.mycat.io/  有详情介绍,有G ...

  3. React 组件框架

  4. java面向对象编程(九)--final

    1.final概念 final可以修饰变量或者方法.在某些情况下,程序员可能有以下需求: a.当不希望父类的某个方法被子类覆盖(override)时,可以用final关键字修饰. b.当不希望类的某个 ...

  5. 练习UML类图中的类的表示

    第一部分:UML类图(class diagram) 类图用来展现一组类.类的特性以及其类相互之间的关系,一个类图由一组类以及它们之间的关系构成,类图用来对系统的领域概念以及静态结构进行建模. 在软件模 ...

  6. JavaSpcript基础

    函数 代码的复用:写一遍多次使用>把特定的功能语句打包放在一起 语法:function 名字(0,1,1多个参数){ 执行的语句 } 返回值return,把语句返回给函数 例子: functio ...

  7. 神州数码标准访问控制列表配置(ACL)

    实验要求:熟练掌握标准访问控制列表配置方法 拓扑如下 R1 enable 进入特权模式 config 进入全局模式 hostname R1 修改名称 interface s0/1 进入端口 ip ad ...

  8. ActiveMq 安装

    系统是centos 6.5的 下载ActiveMq的包   下载地址  http://activemq.apache.org/download.html 我下载的是   apache-activemq ...

  9. MVCC(Multi-version Cocurrent Control)多版本并发控制协议

    MVCC相比2PC是一种更简单有效的分布式事务解决方案. 假设一种场景,一个分布式事务在A,B两个节点更新数据,要么同时成功,要么同时失败. MVCC 中,为每个事务分配一个递增的事务编号,有一个中心 ...

  10. spring boot 单元测试

    Java新手 纯记录 @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = OutDemoApplication.clas ...