服务器部署|laravel部署api项目
本文目录
- 一、购买服务器
- 二、云服务器配置
- 三、打包压缩ftp上传代码
- 四、测试效果
一、购买服务器 由于我们是测试,所以我们可以买按量付费的服务器进行测试:
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
因为我们是测试的所以设置成一个小时后自动释放。
文章图片
配置入方向安全组
文章图片
返回控制台查看我们云主机的公网ip。
二、云服务器配置 购买完之后,我们用终端连接云服务器,升级软件:
文章图片
连接进来之后运行命令
apt update
文章图片
更新完之后,安装我们需要的软件:
apt install nginx
文章图片
安装
mysql
。运行命令apt install mysql-server
:文章图片
安装
php
。apt install php
文章图片
运行命令
apt install php7.4-fpm
。(进行ftp
上传需要,当然也可以使用git
进行上传,我们这使用ftp
演示)文章图片
安装
php
相关扩展:apt install php7.4-xml
文章图片
apt install php7.4-mysql
文章图片
apt install composer
文章图片
三、打包压缩ftp上传代码 我们将根目录下的
vendor
删除,这个第三方的包文件较大,我们删掉之后再云服务器下composer
再安装。接着在虚拟机里
code
文件夹下压缩我们的项目:tar -zcvf shopProjectApi.tar.gz ./shopProjectApi
文章图片
文章图片
我们需要将
shopProjectApi.tar.gz
传输到我们远程的云服务器上。运行命令:
scp shopProjectApi.tar.gz root@39.107.140.29:/tmp
然后输入密码文章图片
可以看到已经传输完成了。
查看远程服务器就有这个文件:
文章图片
接下来把这个文件移动:
mv /tmp/shopProjectApi.tar.gz /var/www/
文章图片
运行命令解压:
tar -zxvf shopProjectApi.tar.gz
文章图片
文章图片
运行
composer install
安装依赖项:报错缺少什么就安装什么。文章图片
apt install php7.4-curl
apt install php7.4-dom
然后再
composer install
文章图片
接着发布配置:
1、但是数据库配置有问题,我们配置的是虚拟机的,而云服务器上还没配置,接下来配置下:cp .env.example .env
2、修改.env
配置,主要是数据库配置等
3、发布DingoApi
配置:php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"
4、发布JWT
配置:php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider"
5、生成JWT TOKEN
:php artisan jwt:secret
6、发布权限相关配置:php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="config"
文章图片
可以看到我们数据的密码和名称。
接下来我们先去创建一个数据库:
文章图片
文章图片
接着
exit
推出。编辑
.env
文件:nano .env
:文章图片
control + x
推出输入Y
保存退出。7、运行迁移同事填充数据:接着修改php artisan migrate --seed
文章图片
nginx
配置:nano /etc/nginx/sites-available/default
服务器:try_files $uri $uri/ /index.php?$query_string;
文章图片
文章图片
control + x
推出输入Y
保存退出。输入命令
nginx -t
查看配置是否正确:文章图片
四、测试效果 接着重启
nginx
:nginx -s reload
文章图片
重启后访问发现报错:
文章图片
文章图片
文章图片
可以看到我们项目已经部署到线上了。
在学习的php的路上,如果你觉得本文对你有所帮助的话,那就请关注点赞评论三连吧,谢谢,你的肯定是我写博的另一个支持。
推荐阅读
- Beego打包部署到Linux
- 私有化轻量级持续集成部署方案--03-部署web服务(下)
- 探索免费开源服务器tomcat的魅力
- [源码解析]|[源码解析] NVIDIA HugeCTR,GPU版本参数服务器---(3)
- Spring|Spring Boot部署到Resin遇到的问题
- laravel框架泛解
- 如何在阿里云linux上部署java项目
- mac|mac 链接linux服务器 如何在Mac上连接服务器
- Linux|Linux 服务器nginx相关命令
- 部署专题集合