关于vue3和thinkphp8部署在宝塔时访问thinkphp public静态文件存在跨域或者是请求数据存在跨域的解决方法

news/2024/7/10 1:07:15 标签: vue, thinkphp

前端打包后上传到后端的public目录下,注意dist目录里面的所有文件都要上传,其中包含dist本身.

前端访问:http://域名/index.html

前后端统一域名网址设置伪静态-设置后重启nginx

# 如果是访问api的,则由thinkphp处理
location /api {
	if (!-e $request_filename){
		rewrite  ^(.*)$  /index.php?s=$1  last;   break;
	}
}
 
# 其他的由vue处理,并重新设置根目录为public下的dist,优先访问index
location / {
	root   /www/wwwroot/api.xtgmf.ltd/public/dist;
	index  index.html index.htm;
	try_files $uri $uri/ /index.html;
}

前后端分离配置伪静态

location ~ \.php(.*)$ {
    add_header Access-Control-Allow-Origin *;
    add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
    add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
    add_header Access-Control-Max-Age: 86400;
    if ($request_method = 'OPTIONS') {
        return 204;
    }
}

location /uploadFiles {
    add_header 'Access-Control-Allow-Origin' $http_origin;
    add_header 'Access-Control-Allow-Credentials' 'true';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,web-token,app-token,Authorization,Accept,Origin,Keep-Alive,User-Agent,X-Mx-ReqToken,X-Data-Type,X-Auth-Token,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
    add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
    if ($request_method = 'OPTIONS') {
        add_header 'Access-Control-Max-Age' 1728000;
        add_header 'Content-Type' 'text/plain; charset=utf-8';
        add_header 'Content-Length' 0;
        return 204;
    }
}       

安装系统环境

  • centos8及以上
  • nodejs18及以上
  • php8及以上
  • redis
  • mysql
  • php拓展:fileinfo、redis

http://www.niftyadmin.cn/n/5453641.html

相关文章

AMEYA360代理 | 江苏长晶科技FST2.0高性能 IGBT产品介绍

江苏长晶科技股份有限公司是一家专业从事半导体产品研发、生产和销售的企业。自2019年起,连续4年被中国半导体行业协会评为 “功率器件十强企业”。2021年开始自主研发有着“工业CPU”之称的IGBT,截至2023年Q3在家电/工业/新能源等行业实现8款产品市场应…

基于springboot+vue+Mysql的超市进销存系统

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

关闭Elasticsearch built-in security features are not enabled

禁用Kibana安全提示(Elasticsearch built-in security features are not enabled) Kibana提示#! Elasticsearch built-in security features are not enabled. Without authentication, your cluster could be accessible to anyone. See https://www.e…

中等职业学校大数据课程建设方案

大数据产业是以数据及数据所蕴含的信息价值为核心生产要素,通过数据技术、数据产品、数据服务等形式,使数据与信息价值在各行业经济活动中得到充分释放的赋能型产业。 大数据产业定义一般分为核心业态、关联业态、衍生业态三大业态。 一、专…

是德科技KEYSIGHT N9938A频谱分析仪

181/2461/8938产品概述: N9938A 是一款使用电池供电的便携式微波频谱分析仪;配置还包括全频段跟踪发生器和前置放大器、干扰分析仪、时间选通、VSWR 和反射测量、内置功率计。 N9938A FieldFox 手持式微波频谱分析仪 主要特性和功能 频率范围&#xff…

浅谈开放词汇目标检测

1. 引言 随着人工智能技术的快速发展,开放词汇物体检测(Open-Vocabulary Object Detection)已经成为计算机视觉领域的一个重要研究方向。开放词汇物体检测的目标是使机器能够识别并定位图像中未在训练集中出现的新类别的物体,这对于机器人技术、自动驾驶…

【JVM】JVM 运行时数据区简介

文章目录 🌴简介🌲堆(线程共享)🎄本地方法栈(线程私有)🌳程序计数器(线程私有)🍀方法区(线程共享)🌸JDK 1.8 元…

js实现base64转字符串

介绍两种 js 中 base64 转 string 的方法。 1. Buffer.from let base64Data aGVsbG8 // hello let data Buffer.from(base64Data, base64).toString(utf-8) console.log(hello)2. atob let str hello // aGVsbG8 let base64Data btoa(str) let data atob(base64Data) …