安装lnmp环境
参考:简书 - Centos 7 下安装LNMP官方最新版
安装redis
参考:简书 - Centos 7下使用yum安装redis
安装nodejs npm
nodejs分8.x和10.x,这里用10.x的,如果需要用8.x,就换成setup_8.x
curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
yum -y install nodejs npm
参考:Linuxhint - CentOS安装nodejs、npm
服务器运行Laravel
创建.env文件,并配置相关参数
1、创建.env
文件(从模板.env.example
文件复制来)
cp .env.example .env
2、配置参数
(1)默认文件中是没有app_key的,需要手动生成APP_KEY
php artisan key:generate
(2)生成后访问网站
遇到的问题
【1】、修改了虚拟主机配置文件后,重启nginxservice nginx restart
的时候,报错:
Redirecting to /bin/systemctl restart nginx.service
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
原因: 配置文件末尾少了';'
操作:在缺少分号结尾的行尾加上分号
参考:
DigitalOcean - Can't start Nginx - Job for nginx.service failed
【2】、执行yum install
时,返回yum except KeyboardInterrupt, e
错误
原因: /usr/bin/yum
执行程序是使用python命令进行执行的,由于之前操作,将python默认的2.7版本替换成了3.7,导致yum
程序的语法不支持,继而报错。
参考: CSDN - yum except KeyboardInterrupt, e: 错误
【3】、加载好laravel项目后,执行composer install
后报The Process class relies on proc_open, which is not available on your PHP installation.
原因:php.ini
文件配置中,禁用了proc_open
、proc_get_status
等方法。
解决:vim /usr/local/php72/etc/php.ini,找到disable_functions
,然后删除proc_open
、proc_get_status
,然后再执行composer install
。(如果执行后还有其他输出信息说方法disabled,同样的在相应位置删除即可)
参考:CSDN - Laravel安装报错
参考资料
1、OneinStack: LNMP环境镜像使用手册
2、Github: 线上服务器自动部署的webhooks
3、凹凸实验室: 使用Github的webhooks进行网站自动化部署
4、Linuxhint: CentOS安装nodejs、npm