基于CentOS 7.2 的Laravel 生成环境部署

一、前期准备:

  • 最新版本的CentOS7.2 安装镜像(我所使用的是minimal)
  • 一个可以运行CentOS的主机或虚拟机
  • SSH远程登录客户端(我用的是SecureCRT)

二、开始部署

现在Linux安装基本都是图形界面,这里我就不一一截图了,我们直接进入部署环节。

1、安装基本工具及自定义:

#更新系统
$ sudo yum update

#安装wget、git、vim....
$ sudo yum install -y wget git vim lrzsz tree net-tools

#配置vim
$ sudo vim /etc/vimrc

在vimrc文件末尾中加入如下几行参数(不设置也没关系,只是配置conf文件的时候比较难看而已):

#显示行数
set nu
#启用语法高亮
syntax on
#表示一个 tab 显示出来是多少个空格的长度
set tabstop=4
#表示在编辑模式的时候按退格键的时候退回缩进的长度
set softtabstop=4
#表示每一级缩进的长度,一般设置成跟 softtabstop 一样。
set shiftwidth=4
#开启自动缩进
set autoindent
set cindent

完成后保存并退出,紧接着我们自定义常用命令的别名:

#使用vim打开当前用户宿主目录下的.bashrc文件
$ sudo vim ~/.bashrc
#系统默认有三个别名,我们在其后增加如下代码:
alias ll='ls -la'
alias artisan='php artisan'

可根据自己的需求,自行定制!

2、使用yum方式安装nignx、php7.1、MariaDB 5.5.*

#添加nginx、php7.1源
$ sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
$ sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

#安装ginx最新版本
$ sudo yum install -y nginx

#启动nginx服务
$ sudo systemctl start nginx.service

#将Nginx设为开机自启动
$ sudo systemctl enable nginx.service

#安装php7.1及相关插件
$ sudo yum install --enablerepo=webtatic-testing php71w-fpm php71w-opcache php71w-cli php71w-gd php71w-imap php71w-mysqlnd php71w-mbstring php71w-mcrypt php71w-pdo php71w-pecl-apcu php71w-pecl-mongodb php71w-pecl-redis php71w-pgsql php71w-xml php71w-xmlrpc

#所有提示输入y,完成安装后验证是否安装成功
$ php -v
$ php -m

#安装MariaDB
$ sudo yum -y install mariadb*
$ sudo systemctl start mariadb.service
$ sudo systemctl enable mariadb.service

#初始化
$ sudo mysql_secure_installation

#本地登录
$ mysql -uroot -p

#创建用户设置密码并设为任何主机可登陆
$ GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;

#安装Redis
$ sudo yum install redis
$ sudo service redis start
$ sudo chkconfig redis on

3、配置php-fpm和nginx

php-fpm默认采用TCP方式,为了提高性能,我们采用socket

$ sudo vim /etc/php-fpm.d/www.conf

#将listen = 127.0.0.1:9000改为:
listen = /var/run/php-fpm/php-fpm.sock

#保存退出后启动php-fpm
$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm

#查看是否正常运行
$ sudo ps aux | grep php-fpm

#修改nginx的配置
$ sudo rm -f /etc/nginx/conf.d/default.conf
$ sudo vim /etc/nginx/conf.d/laravel.conf
拷贝如下代码到配置文件中
server {
    listen 80;
    server_name domain;
    root /home/laravel/public;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

注意:这里我改变了root的默认位置,如果系统开启了selinux的话,访问的时候回报403,关闭selinux即可。

#停止firewall
$ sudo systemctl stop firewalld.service

#禁止firewall开机启动
$ sudo systemctl disable firewalld.service

$ sudo vim /etc/selinux/config
#将SELINUX=enforcing改为selinux=disabled,保存并退出

$ sudo setenforce 0

到此,基本环境已经部署完成了……接下来我们开始安装composer、node、yarn等工具

三、安装composer、nodejs及yarn

$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

#使用国内镜像
$ composer config -g repo.packagist composer https://packagist.phpcomposer.com

#安装nodejs
$ sudo yum install -y nodejs yarn

四、安装Laravel、Lumen及环境变量配置

$ composer global require "laravel/installer"
$ composer global require "laravel/lumen-installer"

#添加环境变量
$ vim ~/.bash_profile

#将PATH=$PATH:$HOME/bin改为:
 PATH=$PATH:$HOME/bin:~/.config/composer/vendor/bin

到此,所有环境搭建完成,你可以直接使用laravel或lumen 命令创建项目,并修改nginx的root目录指向到项目的public目录中!后续系统优化的文章敬请期待。。。

    原文作者:George
    原文地址: https://segmentfault.com/a/1190000007469714
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞