Centos 7安装 && lnmp(linux nginx mysql php)一键包的使用 && Laravel项目部署

Centos 7安装 && lnmp(linux nginx mysql php)一键包的使用 && Laravel项目部署

本次项目,使用virtual box安装,如果放到服务器上,请自行转换

一、系统安装篇

1. virtual box操作简单。重点部分,请看看图片说明,分区推荐20G以上。

_

2. 网络,采用桥接(在局域网中,有自己的ip)

3. 选择你下载好的centos镜像文件

4. 选第一项,开始安装

5. 生产环境推荐英文,这里演示,才用中文

6. 生产环境,软件越少,系统越稳定。选择最小安装,务必勾选 开发工具

7. 安装位置,进来后,直接点完成就行了

8. 网络直接开启即可

9. 两处密码,请自行设置

10. 安装完成

11. 登陆后,执行ip addr查看ip地址

二、安装lnmp篇

这里使用lnmp一键包,官网地址http://lnmp.org/install.html

1. 使用ssh连接上去,如果用windows,请使用xshell的客户端。

2. 执行以下命令

#更新
yum -y update

#安装screen 与 wget
yum -y install screen
yum -y install wget

#下载安装lnmp一键包
wget -c http://soft.vpser.net/lnmp/lnmp1.3-full.tar.gz && tar zxf lnmp1.3-full.tar.gz && cd lnmp1.3-full && ./install.sh lnmp

如果你的网速太慢,那我推荐你使用迅雷下载http://soft.vpser.net/lnmp/lnmp1.3-full.tar.gz 。完成后,通过filezilla等软件sftp传上去,然后执行

#首先自己cd到你上传好文件的目录中
tar zxf lnmp1.3-full.tar.gz && cd lnmp1.3-full && ./install.sh lnmp

3. 选择需要安装软件的版本

生产环境,数据库密码务必改为其他的,因为这里只是作演示,默认使用root了。

其他项目,根据自己需求选择。

我这里选择了mysql 5.7.11 和 php7.0.7

4. 开始漫长的编译过程

按任意键后,开始编译。具体时间根据机器情况,普遍半小时-两个小时左右(参考:centos 7,Macbook pro 13寸 2015款顶配 编译约 1.5小时)。

我建议你,去喝一杯咖啡,或者直接丢在这里,睡觉去吧,醒来再继续搞。

编译过程中,尽量不要去操作其他消耗计算机资源的操作。最好就是放着电脑别动,让他自己跑,否则可能会导致编译失败。

如果出现绿色的 completed! enjoy it。那么恭喜你了,lnmp安装完成。 如果出现红字,报告失败,那么请重头开始吧。

三、项目部署篇,以laravel项目为例。

1. 添加虚拟主机

lnmp vhost add

  1. 如果是线上,域名请填写真实域名。

  2. 如果你的项目不是discuz、discuzx、discuzx2(Discuz X二级目录)、wordpress、wp2(WordPress二级目录)、typecho、typecho2(Typecho二级目录)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex。那么请不要使用它的rewrite。

  3. 日志,根据自己需求决定,是否开启。

  4. 更多详细的信息,请参考http://lnmp.org/faq/lnmp-vhost-add-howto.html

2. 设置客户端主机的host文件(真实服务器环境,跳过这一步,并自行设置域名解析)。

因为我们自己定义了一个不存在的域名,xsystem.app。这个域名并不是真实存在的。

那么你需要设置客户机的host,将此域名对应到服务器ip上去。

#如果你是mac机,在mac自己的终端中(不要搞到ssh连接的服务器上去了)执行
vim /etc/hosts

#在最底下加入
192.168.0.111   xsystem.app

#保存退出后,为确保正确,执行
ping xsystem.app

#如果出现服务器对应的ip地址,表示你已设置成功。

3. 放置测试文件

回到ssh连接的服务器终端中

#进入自己的项目目录
cd /home/wwwroot/xsystem.app/

vi index.php

写入以下内容

<?php
echo "长乐未央";

保存退出后,在客户端浏览器上访问

如果能正常显示,表示你以上的配置都没有问题。

#删除刚才创建的index.php
rm index.php

4. 上传数据库

使用sequel pro或者navicat连接到服务器的MySQL上

注意,上面的账号密码,是MySQL的。下面的是服务器登录的账号密码。

新建数据库,设置编码,导入数据库,请自行操作。

5. 上传Laravel项目

使用filezilla的sftp连接,将你的项目上传到/home/wwwroot/xsystem.app

我个人习惯,先压缩成zip文件,然后上传到服务器的/home/wwwroot

cd /home/wwwroot

#先解压缩
unzip xSystem.zip

#将解压缩的文件,复制到真实的项目目录
cp -R xSystem/. xsystem.app/

#如果解压缩的文件夹不要了,那就删掉好了
rm -rf xSystem

#依据lnmp文档,对项目进行权限设置
chown www:www -R xsystem

6. 修改Lavavel的数据库等配置

cd /home/wwwroot/xsystem.app
vi .env

#根据自己服务器环境,自行修改就好

7. 修改nginx配置文件

cd /usr/local/nginx/conf/vhost

vi xsystem.app.conf

说明

  1. 由于Laravel项目的根目录在public下,所以这里必须要配置上。Tp项目就不要管了。

  2. 加入rewrite配置,来美化URL。如果你使用的是Thinkphp,请去Tp官方文档搜索nginx,也有对应的配置,并将你的url模式改为rewrite。

  3. 开启错误日志。
#修改完成后,重启服务
lnmp restart

#如果重启失败,请尝试执行以下命令来检查错误。
nginx -t

8. 访问与排错

你这个时候通过浏览器访问,会出现500错误。

#访问错误日志
vi /home/wwwlogs/xsystem_error.log

#发现是是项目中的storage目录没有权限(Laravel项目,会自动向此目录中写日志和缓存,所以必须有要写权限),执行
chmod -R 777 /home/wwwroot/xsystem.app/storage/

#如果你的项目还做了文件、图片上传功能,对应目录也需要开启写权限。(这个目录,请根据自己项目路径来,我的是存在了public/finder下)
chmod -R 777 /home/wwwroot/xsystem.app/public/finder/

再次访问, 一切均已正常。

上一篇课程 没有更多了

学生登录