前端-部署配置前端项目时,关于env.development、env.production以及nginx.conf的关系
2023-12-26 17:44:51
今天要打包前端项目生产镜像部署,学习到了关于env.development、env.production以及nginx.conf的关系
env.development
首先是env.development,这里面主要放的是我们本地开发时的代理服务器(需要代理来解决跨域问题的话)
env.production
当你不需要配置环境变量的时候,可以将这个理解为线上的env.development,即项目上线之后,代理服务器这些用的就不是env.development的配置了,所以需要将线上想要的访问的地址写死在这里就行
nginx.conf
当需要部署前端应用时,添加应用的环境变量的时候,例如前端的访问地址前缀之类的,可以将这些前缀作为环境变量,写在nginx.conf中。例如:
server {
listen 8080;
server_name localhost;
location ^~/mgrcontrol/{
proxy_pass '$MGR_SERVICE';
}
location /{
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';
if ($request_method = 'OPTIONS') {
return 204;
}
root /opt/apps/dist;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
}
即线上访问前缀为mgrcontrol时,会去寻找环境变量中$MGR_SERVICE的值,然后进行访问地址的替换
总结
env.production和nginx.conf的区别就在于,你是否想要将前端访问的地址作为环境变量暴露出去,这么做的意义在于可以线上随时修改访问的地址,而不需要再去改动代码。
文章来源:https://blog.csdn.net/qq_42371932/article/details/135226319
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!