最新新增一些请求代理相关的问题
1. apple的写法,开发阶段,.env.development里面配置了baseURL,比如 http:
但是它引用在vite.config.ts的server代理对象里。如下面这种写法
proxy: {
"/allocation": {
target: process.env.VUE_FAST_BASEURL,
changeOrigin: true
}
}
.env环境变量中的值只用在了这里,.env.production中根本也没有用到,前端上线后,服务器配置代理,根据一个路径,比如“/product” 直接转到真正的后端接口上了。
2. 我自己的测试
vite.config.ts中配置了代理,然后在request.ts中配置baseURL,
1. request的url,得是和本地服务同端口的地址,配置的代理才会起作用,比如本地是5173, 请求的地址就得是5173,代理再转发给9998(代理想要生效,就得是访问同域才行)
2. 即使dev开发代理没有生效,接口后端配置CORS,也能拿到数据
3. 生产环境,如果baseURL为全路径,打包以后,即使Nginx配置反向代理也会报 CORS err,还需要接口后端配置cors
4. 所以,还是那句话,baseURL不要配置全路径,只配置匹配代理的一段路径,Nginx只需配置反向代理,就能够拿到接口数据
Nginx
服务端相关
1. 开发环境可以baseURL用环境变量赋值全路径,再配置代理,报CORS error,再需要后端cors
2. 生产环境,Nginx服务器,不用.env.production作为 baseURL,前端项目的Nginx服务器直接设置反向代理,就能够访问到后端接口
用.env.production作为 baseURL, Nginx即使配置了反向代理,我自己测试一个报CORS,一个正常,
服务器地址:http:
1. common+shift+G 查看隐藏目录
2. cd 到 usr local bin目录(这里都是执行文件)
## 启动命令: nginx
## 快速停止命令 nginx -s stop
## 平稳退出命令:nginx -s quit
## common+shift+G -> usr -> local ->
bin-可执行
etc-配置环境
var-源代码
重新加载配置文件命令:nginx -s reload
检查配置文件正确性:nginx -t
查询nginx主进程号:ps -ef | grep nginx
正常停止:kill -QUIT 主进程号
快速停止:kill -TERM 主进程号 /kill -INT 主进程号
强制停止:kill -9 主进程号









