自动秒收录

Laravel8.x入门开发教程:Debian9服务器部署Laravel


文章编号:2870 / 分类:技术教程 / 更新时间:2024-05-23 10:24:57 / 浏览:

专注SEO优化分享SEO技术

//Laravel8.x入门开发教程:Debian9服务器部署Laravel

SEO禅准备写一个完整的Laravel入门系列教程,从部署开发环境到项目部署生产服务器,这是这个系列的第二篇,第一篇说的是如何配置Laravel开发环境,这篇教大家如何将开发好的项目部署到生产服务器,这里SEO禅选的是Debian9的Linux版本,这两篇之后,就会开始介绍如何使用Laravel进行项目开发,SEO禅将带大家使用Laravel做一个类似进销存系统的项目,下面开始分享今天的内容。

首先我们还是先安装Apahce服务器,运行如下命令安装Apache2:

systemctlstatusapache2

在浏览器上输入服务器IP地址,就能看到如下页面:

能看到上面图片的样子说明Apache2服务安装正确,我们在服务器目录先创建一个站点目录:

mkdir/var/www/html/seozen.top

把seozen.top改成你们自己的域名,或者目录名称都可以,这里我们在继续创建一个配置文件:

vim/etc/apache2/sites-available/seozen.top.conf

然后把下面的代码拷贝到文件中:

ServerAdminmr.yu1991@gmail.comServerNameseozen.topServerAliaswww.seozen.topDocumentRoot/var/www/html/seozen.top/publicAllowOverrideallRequireallgrantedErrorLog${APACHE_LOG_DIR}/seozen.top_error.logCustomLog${APACHE_LOG_DIR}/seozen.top_access.logcombined

这里的public指向的就是Laravel目录的public,保存后运行如下命令让配置生效:

a2ensiteseozen.topserviceapache2restart安装PHP

再安装PHP之前我们先安装下Apache支持PHP的模块,运行如下命令:

aptinstalllibapache2-mod-php

之后运行如下命令,安装下PHP7.4的仓库:

wget-qhttps://packages.sury.org/php/apt.gpg-O-|apt-keyadd-echo"debhttps://packages.sury.org/php/stretchmain"|tee/etc/apt/sources.list.d/php.list

再升级下apt之后安装PHP和Laravel所需要的PHP扩展模块:

aptupdateaptinstallphpphp-cliphp-fpmphp-jsonphp-commonphp-mysqlphp-zipphp-gdphp-mbstringphp-curlphp-xmlphp-bcmath

安装完成之后,输入下面命令查看版本:

root@vultr:~#php-vPHP8.0.8(cli)(built:Jul1202116:10:07)(NTS)Copyright(c)ThePHPGroupZendEnginev4.0.8,Copyright(c)ZendTechnologieswithZendOPcachev8.0.8,Copyright(c),byZendTechnologies安装MySQL

可以到这个链接找MySQL,之后运行如下命令,添加MySQL8apt库支持:

apt-yinstallwgetwgethttp://repo.mysql.com/mysql-apt-config_0.8.15-1_all.debaptinstall./mysql-apt-config_0.8.15-1_all.deb

apt库mysql配置
Laravel8.x入门开发教程Debia

运行上面命令后会跳出这个界面,使用下方向键选择Ok确认就行,之后再运行如下命令,安装MySQL8

aptupdateapt-yinstallmysql-server

之后会跳出设置root密码的界面,确认设置下就好:

因为本地的locale没有设置,如果是使用iterm2zsh,可以把下面的代码加入~/.zshrc中:

if[[-z"$LC_ALL"]];thenexportLC_ALL='en_US.UTF-8'fi

之后再source~/.zshrc让代码生效,在iterm2中再输入locale命令查看是否如下输出:

LANG=""LC_COLLATE="en_US.UTF-8"LC_CTYPE="en_US.UTF-8"LC_MESSAGES="en_US.UTF-8"LC_MONETARY="en_US.UTF-8"LC_NUMERIC="en_US.UTF-8"LC_TIME="en_US.UTF-8"LC_ALL="en_US.UTF-8"

安装完毕之后,输入如下代码看看MySQL运行状态:

systemctlstatusmysql

Debian9安装MySQL运行成功

可以看到状态已经是Active,你们按照教程安装的是MySQL8,SEO禅用得这个是MariabDB,是MySQL的开源版本,语法都是一样的,可以直接使用,这里就不再去安装MySQL8版本。

到这里三个关键的基础环境:Apache,PHP,MySQL(MariaDB)已经安装完成,都是用得apt进行安装,如果安装过程中安装出错运行不起来,可以通过如下命令卸载:

apt-getremove--purge'mysql-.*'

上面这条命令是卸载所有MySQL包,包括配置文件,下面正式开始部署Laravel项目。

在配置项目之前,我们要让Apache2开启下重写规则,让所有的请求都通过index.php进入,让Laravel的路由托管,运行如下命令:

a2enmodrewritesystemctlrestartapache2安装Git

SEO禅部署项目现在都是先上传到Github,之后用git命令去同步下载部署,这样在后期项目更新修改bug,就能很高效的更新服务器代码,这里我们先使用apt命令安装下Git:

aptinstallgit

安装完成,需要配置SSH秘钥信息,参考SEO禅写的,怎么从github拉取项目SEO禅在这里就不说了,这个自己不会的先到其他地方看看,拉去完自己的项目之后,需要修改下目录权限:

php-r"copy('https://getcomposer.org/installer','composer-setup.php');"php-r"if(hash_file('sha384','composer-setup.php')==='756890a4488ce9024fc62c56153228907f1545c228516cbf63f885e036d37e9a59d27d63f46af1d4d07ee0f76181c7d3'){echo'Installerverified';}else{echo'Installercorrupt';unlink('composer-setup.php');}echoPHP_EOL;"phpcomposer-setup.phpphp-r"unlink('composer-setup.php');"

之后设置成全局命令:

mvcomposer.phar/usr/local/bin/composer

到Laravel项目根目录,运行如下命令安装Laravel所需要的依赖包:

composerinstall配置MySQL链接

哇,已经到这一步了真的不容易,休息下配置下数据库链接,再修改几个参数,我们的Laravel项目就能跑起来了,首先我们需要为Laravel项目创建一个数据库和数据库用户,这里参考《》文章中MySQL创建wordpress数据库的内容。

正常来说从github拉下来的Laravel项目源代码,只有.env.example文件,我们需要手动设置下.env文件,首先我们拷贝一份:

cp.env.example.envvim.env

把下面几个配置项改下:

APP_NAME=项目名称APP_ENV=productionAPP_KEY=APP_DEBUG=falseAPP_URL=http://www.seozen.topLOG_CHANNEL=stackLOG_LEVEL=debugDB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=数据库DB_USERNAME=数据库用户DB_PASSWORD=数据库密码

保存后退出,再运行如下命令生成新的key就可以:

phpartisanmigrate

一些优化Laravel项目命令:

一个一个安装太麻烦了,直接把小白吓走了,我现在开发本机使用MAMP集成环境,服务器统一使用oneinstack集成环境,免除很多烦恼。

现在基本上都用docker一键部署或者安装开发环境了

您的电子邮箱地址不会被公开。必填项已用*标注

Copyright©2021-2023SEO禅专注SEO优化-分享SEO技术


本文地址:https://www.badfl.com/article/383cf49a166fbb665901.html

上一篇:使用Charles进行抓包代理服务器proxy非共享...
下一篇:从零开始创建一个PhotoApp使用CameraX和Com...

发表评论

温馨提示

做上本站友情链接,在您站上点击一次,即可自动收录并自动排在本站第一位!
<a href="https://www.badfl.com/" target="_blank">自动秒收录</a>