当前位置: 首页 > wzjs >正文

网站 psd高平网站优化公司

网站 psd,高平网站优化公司,软件开发培训学费,群晖安装多个wordpress目录 Build 打包 产生 dist 的静态文件夹 问题产生 ✅前端目前最简单测试方法 ✅ 其他测试的正确做法(4 选 1) 1. 本地起 HTTP 服务器(最简单通用) 2. Node 自带 http-server 3. 继续用 file:// 也行,但必须改…

 

目录

Build 打包

产生 dist 的静态文件夹

问题产生

✅前端目前最简单测试方法

✅ 其他测试的正确做法(4 选 1)

1. 本地起 HTTP 服务器(最简单通用)

2. Node 自带 http-server

3. 继续用 file:// 也行,但必须改 Vite 配置

一键测试脚本(可选)

删掉 所有 /usr/shara/nginx/html 文件先

​​​​​​​把 dist 拷过去

先进下载的终端先​​​​​​​

改 Nginx 配置(Vue Router history 模式)

后端解决跨域问题

示例(Node.js/Express)​​​​​​​

前端代理(开发环境)

示例​​​​​​​

使用第三方库

Nginx 代理(真神)


项目写的差不多了 就可以去进行项目打包

前端方便的话打 dist 部署在nginx, 后端Java 可以打 Jar/War 包部署在tomcat

以 Vue项目 为本次文章内容

Build 打包

Ctrl + ~ 调出控制终端,到控制台那边

npm run build

产生 dist 的静态文件夹

问题产生

这时候,很多小伙伴就开始迫不及待去双击 index.html ,那么 恭喜你,喜提一堆问题

浏览器禁止通过 file:// 协议 去加载本地磁盘上的 JS/CSS(CORS 策略)。你直接双击打开 dist/index.html 就会报错:

Access to script at 'file:///D:/assets/index-xxx.js' … has been blocked by CORS policy

所以“运行不起来”并不是打包失败,而是 方式不对

✅前端目前最简单测试方法

1.就是控制台 node 装个 live-server

然后去到 dist 的目前去打开就好了

live-server --port=8888

浏览器访问 http://localhost:8888 即可。

2.还一个就是用 vscode 软件

安装个 插件 - Live Server

在index.html中 右击打开

默认是 http://127.0.0.1:5501/index.html

✅ 其他测试的正确做法(4 选 1)

1. 本地起 HTTP 服务器(最简单通用)
# 全局装一次npm i -g serve# 在 dist 目录里serve dist

浏览器访问 http://localhost:8888 即可。

2. Node 自带 http-server
# 全局装一次npm i -g http-server# 在 dist 目录里http-server dist -p 8080
3. 继续用 file:// 也行,但必须改 Vite 配置

如果你 非要用双击打开,在 vite.config.ts 里加:​​​​​​​

export default defineConfig({  base: './',   // 关键:相对路径})

然后重新 npm run build。⚠️ 注意:

  • 这种方式仍可能被浏览器限制(尤其是 Chrome),推荐还是走 HTTP。

一键测试脚本(可选)​​​​​​​

// package.json{  "scripts": {    "build": "vite build",    "preview": "vite preview"   // 打包后本地预览  }}​​​​​​​
npm run buildnpm run preview        # 自动起 http://localhost:4173

反正就是

  • 不要双击 index.html

  • 用 servehttp-server 或 vite preview 起 HTTP 服务。

  • 如果非要 file://,务必把 base 设为 './' 并了解限制。

接着 进入正题,如何部署到nginx中呢?

环境介绍

因为是 部署在别人电脑的局域网 linux 龙芯虚拟机 中

所以先把静态项目压缩个包,无法直连虚拟机的,只能通过,利用微信传输助手去传到那边,然后解压吧

因为虚拟机那边没装 解压的,得安排一个先

yum install unrar

啊啊啊!!!龙怒!!

速速查找一下!!

有zip的 ,那就换一个 zip 就好了 

传输过去

那么!!接下来,解压然后丢到nginx就完事了,待会细说

没安装过nginx的,安装一下

yum install nginx

nginx 的配置文件可以去 运行状态 那边看到

systemctl status nginx

我看了一下配置文件,项目在 /usr/share/nginx/html 里面,只需要删了然后再丢进去就完事了,别怕!!!大不了把nginx删了,😃

开始操作!!!

1.把打包产物(dist 目录里的所有文件)放到 Nginx 的 Web 根目录。

删掉 所有 /usr/shara/nginx/html 文件先

rm -rf /usr/share/nginx/html/*

删完后刷新一下就是这样了

把 dist 拷过去

先进下载的终端先​​​​​​​

# 去用户的下载目录cd /home/devuser/下载

查看一下内容

ll

开始拷贝文件过去

cp -r dist/* /usr/share/nginx/html/

刷新界面

然后 再用点 内网穿透技术 就出来了

如果你退出了然后返回的界面明明是可以的,但还是 404

2.让 Nginx 的站点配置能够正确地把 SPA 路由都回退到 index.html(否则刷新页面会 404)

改 Nginx 配置(Vue Router history 模式)

编辑站点配置文件

CentOS 在 /etc/nginx/nginx.conf/​​​​​​​

location / {   try_files $uri $uri/ /index.html;}

编辑完后检测+重启​​​​​​​

sudo nginx -t   # 检查语法sudo systemctl reload nginx

Vue SPA 刷新测试

不会出现这种问题了

解决跨域问题

后端解决跨域问题

后端可以通过设置 CORS(跨域资源共享)来允许前端应用的跨域请求。这是最推荐的方式,因为它将跨域问题的解决放在了数据的提供者(后端)端。

示例(Node.js/Express)​​​​​​​
const express = require('express');const cors = require('cors');const app = express();app.use(cors());app.get('/data', (req, res) => {  res.json({ message: 'Hello from server!' });});app.listen(3000, () => {  console.log('Server is running on port 3000');});

前端代理(开发环境)

在开发环境中,可以使用 Vue CLI 提供的代理功能来解决跨域问题。通过在 vue.config.js 文件中配置代理,可以让前端请求通过代理服务器转发到目标服务器。

示例​​​​​​​
// vue.config.jsmodule.exports = {  devServer: {    proxy: {      '/api': {        target: 'http://wmcode.com', // 目标服务器地址 或者 127.0.0.1:port        changeOrigin: true, // 允许跨域        pathRewrite: {          '^/api': '' // 重写路径        }      }    }  }};

使用第三方库

有一些第三方库可以帮助解决跨域问题,例如 axios 的拦截器可以处理跨域请求。

import axios from 'axios';axios.interceptors.request.use(config => {  config.headers['Access-Control-Allow-Origin'] = '*';  return config;}, error => {  return Promise.reject(error);});

Nginx 代理(真神)

如果你使用 Nginx 作为反向代理服务器,可以在 Nginx 配置中设置代理规则来解决跨域问题。​​​​​​​

server {  listen 80;  server_name wmcode.com;  location /api {    proxy_pass http://wmcode.com;    proxy_set_header Host $host;    proxy_set_header X-Real-IP $remote_addr;    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    proxy_set_header X-Forwarded-Proto $scheme;  }}​​​​​​​
#检测语法nginx -t#重启服务nginx -s reload


* Thanks you *

如果觉得文章内容不错,随手帮忙点个赞在看转发一下,如果想第一时间收到推送,也可以给我个星标⭐~谢谢你看我的文章。


*往期推荐 *

实现如何利用 Kafka 延时删除 用户邮箱的验证码(如何发送邮箱+源码) - 第一期

Docker小白入门教程一篇领你入门(CRUD全命令+无废话版+问题集)-第三期

Docker小白入门教程一篇领你入门(CRUD全命令+无废话版+问题集)

想要高效处理,那不妨看看 Python的 异步 Asyncio 保证效率翻多倍

银河麒麟 | ubuntu 安装国产达梦DM8数据库(安装+外网通+IDEA连接)

网络设备日志存储到指定的Kiwi-log服务器(图解+软件)

银河麒麟 | ubuntu 安装运用 docker 容器,实现容器化部署项目

银河麒麟 | ubuntu 安装zabbix监控设备信息(亲测包对)

国产操作系统-银河麒麟本地化部署Ollama国产开源的AI大模型Qwen3

Ubuntu |  安装 Zabbix 一篇就够了

Swagger | 手把手带你写自动生成接口文档的爽感(零基础亲测实用)

SpringBoot整合Openfeign接入Kimi Ai!!超简单,居然没多少行代码??(附加兜底教程)

SpringBoot接入Kimi实践记录轻松上手

Linux | 零基础Ubuntu搭建JDK

Maven | 站在初学者的角度配置与项目创建(新手必学会)

Spring Ai | 极简代码从零带你一起走进AI项目(中英)

Open Ai | 从零搭建属于你的Ai项目(中英结合)

MongoDB | 零基础学习与Springboot整合ODM实现增删改查(附源码)

Openfeign | 只传递城市代码,即可获取该地域实时的天气数据(免费的天气API)

Redis | 缓存技术对后端的重要性,你知道多少?

Mongodb | 基于Springboot开发综合社交网络应用的项目案例(中英)


感谢阅读 | 更多内容尽在公棕号 WMCode | CSDN@小Mie不吃饭

http://www.dtcms.com/wzjs/491758.html

相关文章:

  • 昆明做网站优化哪家好微信广告推广如何收费
  • iis一个文件夹配置多个网站长沙靠谱的关键词优化
  • 公司网页如何建立优化营商环境心得体会2023
  • 娱乐论坛网站建设方案范文营销图片素材
  • 这2个代码 找做网站的 安装一下网络游戏推广平台
  • 昆山规模的网站建设公司有哪些免费网站谁有靠谱的
  • 单位网站建设的优势百度推广运营工作是什么
  • 如何做网站的301重定向泉州seo培训
  • 国内电商网站跳出率是多少最新新闻事件今天国内大事
  • 怎样做咨询网站aso优化哪家好
  • 福州做企业网站域名权重是什么意思
  • 西乡做网站哪家便宜深圳竞价托管公司
  • 网站制作模板下载电商seo名词解释
  • 长沙高校网站制作公司中国职业培训在线
  • jsp小型网站开发代码360seo排名优化服务
  • 建设像京东一样的网站厨师培训机构 厨师短期培训班
  • 导购 网站模板微博推广效果怎么样
  • 大型网站建设费用营销qq
  • wordpress本地网站怎么搬到服务器百度平台商家
  • 有啦域名网站怎么做营销推广投放
  • 大连网站建设报价关键词搜索优化公司
  • 网页打不开怎么回事青岛seo网站建设公司
  • 网站建设 百度文库营业推广是一种什么样的促销方式
  • 网站制作模板代码泉州百度竞价开户
  • 横岗做网站企业官方网站怎么申请
  • 网站如何做触屏滑动效果百度客户服务电话是多少
  • 网站后端技术有哪些游戏优化软件
  • 百度网页跳转app美国seo薪酬
  • 深圳网站建设亿联时代广州做seo整站优化公司
  • 网站注销网站友链外链