Vue3+vite+ThinkPHP8 项目,public目录同域,云部署记录

public同域部署:Vue3 打包的dist文件夹部署到ThinkPHP 项目的public运行目录下

这里不介绍宝塔的安装,如不会的童鞋请自己百度,网上有很多教程,本文以aapanel 为例(宝塔国际版)。

我这里分网站和管理后台两个Vue3项目,按照下方的操作步骤完成之后,需要在public目录下创建admin文件夹,把管理后台vue项目生成的文件(dist文件夹里的文件,不要把dist文件夹也拷贝进去)拷贝到admin目录下访问https://域名/admin就可以访问后台了。

1、新建站点

2、进入网站目录删除默认的文件

3、上传ThinkPHP 代码到网站根目录下

4、将Vue编译好的运行文件上传至public目录下

5、修改配置(重要)

因为配置问题踩了不少坑,vue与thinkPHP都有路由,如果配置不正确就会出现vue前端无法访问或者可以访问首页,但是访问其他页面之后刷新页面出现404的情况,如配置好之后出现以上情况请认真检查配置是否正确。

下方图片中的几个点事重要的部分一定要配置正确,我的thinkPHP是多应用项目,cli是网站,adm是管理后台,所以请求路径中带/cli和/adm的都是接口请求,把这些请求转发给php处理就可以,这些之外的链接都是前端跳转页面的请求,直接给vue处理即可。我把重定向代码附在页面底部,有需要的童鞋根据自己的实际情况做修改。

location /cli {
	if (!-e $request_filename){
		rewrite  ^(.*)$  /index.php?s=$1  last;   break;
	}
}
location /adm {
	if (!-e $request_filename){
		rewrite  ^(.*)$  /index.php?s=$1  last;   break;
	}
}
location / {
	root   /www/wwwroot/test.com/public/dist;
	index  index.html index.htm;
	try_files $uri $uri/ /index.html;
}

补充问题:测试后发现的问题,vue网站的生成文件需要往public目录下拷贝一份不带dist文件夹,public目录下的dist文件夹也要继续保留不然无法访问网站。(我暂时也没有弄清楚为什么会这样,弄清楚之后再来补充)

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值