69 lines
2.1 KiB
Markdown
69 lines
2.1 KiB
Markdown
|
|
---
|
|||
|
|
name: jjb-static-server-config
|
|||
|
|
description: 定义 JJB 项目静态资源服务器配置规范。在配置 jjb.config.js 的 www、预览构建产物或 CORS 时使用。
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 应用配置与开发环境
|
|||
|
|
|
|||
|
|
## 静态资源服务器配置
|
|||
|
|
|
|||
|
|
- **配置来源**:静态资源服务器配置来源于根目录 `jjb.config.js` 文件中的 `www` 属性
|
|||
|
|
|
|||
|
|
- **功能说明**:静态资源服务器用于预览构建后的静态资源文件,基于 Express 搭建,支持 CORS 和单页面应用(SPA)路由
|
|||
|
|
|
|||
|
|
- **配置结构**:
|
|||
|
|
|
|||
|
|
```javascript
|
|||
|
|
// jjb.config.js
|
|||
|
|
{
|
|||
|
|
www: {
|
|||
|
|
// 服务器端口号
|
|||
|
|
port: 8566,
|
|||
|
|
// 服务器主机地址
|
|||
|
|
host: 'localhost',
|
|||
|
|
// CORS 配置
|
|||
|
|
cors: '*',
|
|||
|
|
// 静态资源目录
|
|||
|
|
static: 'dist'
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
- **配置说明**:
|
|||
|
|
|
|||
|
|
| 配置项 | 类型 | 说明 | 默认值 |
|
|||
|
|
| :--- | :--- | :--- | :--- |
|
|||
|
|
| `port` | number | 静态资源服务器监听的端口号 | `8566` |
|
|||
|
|
| `host` | string | 静态资源服务器绑定的主机地址 | `'localhost'` |
|
|||
|
|
| `cors` | string | CORS(跨域资源共享)配置,支持通配符 `'*'` 或具体域名 | `'*'` |
|
|||
|
|
| `static` | string | 静态资源目录路径,相对于项目根目录 | `'dist'` |
|
|||
|
|
|
|||
|
|
- **使用场景**:
|
|||
|
|
|
|||
|
|
- **预览构建产物**:构建完成后,启动静态资源服务器预览生产环境构建结果
|
|||
|
|
|
|||
|
|
- **本地测试**:在本地环境中测试构建后的应用,验证构建产物是否正确
|
|||
|
|
|
|||
|
|
- **跨域测试**:通过配置 CORS 支持跨域访问测试
|
|||
|
|
|
|||
|
|
- **启动命令**:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 启动静态资源服务器
|
|||
|
|
npm run www
|
|||
|
|
# 或
|
|||
|
|
yarn www
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
- **访问地址**:根据配置的 `host` 和 `port`,默认访问地址为 `http://localhost:8566`
|
|||
|
|
|
|||
|
|
- **注意事项**:
|
|||
|
|
|
|||
|
|
- 启动静态资源服务器前,需要先执行构建命令生成 `dist` 目录
|
|||
|
|
|
|||
|
|
- 如果 `static` 配置的目录不存在,服务器会启动但可能无法正常提供服务
|
|||
|
|
|
|||
|
|
- 静态资源服务器支持单页面应用(SPA)的路由回退,所有路由都会回退到 `index.html`
|
|||
|
|
|
|||
|
|
- CORS 配置在生产环境中应设置为具体域名,避免使用通配符 `'*'` 带来的安全风险
|