打包的命令依据项目的配置可能会有所不同,打包的命令可以在package.json中查看
项目中vue.config.js中的配置如下:
proxy关系到我们项目部署到nginx上需要配置对应的反向代理
publicPath关系到我们部署时是否需要配置子路径
例如:https://www.my-app.com/
那么publicPath就为:/
例如:https://www.foobar.com/my-app/
那么publicPath就为:/my-app/
打开终端输入一下命令:
npm run build
打包后生成的dist文件夹:
将生成的dist文件夹整个移到nginx中的html文件夹中:
打开nginx目录下的、conf文件夹下的nginx.conf文件
进行配置:
server { listen 9800; # 这里配置的是打开的端口号 server_name localhost; # 这个配置打开时的域名,由于是本地部署就直接使用localhost #charset koi8-r; #access_log logs/host.access.log main; location / { # 项目所在路径,由于我们是一整个打包后的dist文件夹放到html目录下的,所以我们的路径就是html/dist/, 注意最后面必须加/ root html/dist/; #项目所在路径,最后面必须加/ index index.html index.htm; # 匹配项目的入口页,因为是dist文件夹下的,所以路径是/dist/index.html, 注意前面必须加/ try_files $uri $uri/ /dist/index.html; #匹配项目的入口页,前面必须加/ } # 下面的是反向的代理,解决跨域问题 # ^~/api/sjjh/ ^~/api/ 与我们的vue.config.js中proxy是一一对应的 # proxy_pass 是我们真实对应的 请求地址 location ^~/api/sjjh/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_pass xxxx; } location ^~/api/ { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_pass xxxxx; } }
配置完成后进行保存,启动,可以点击nginx.exe进行启动
测试,打开浏览器输入127.0.0.1:9800, 注意端口号必须要跟上面配置一样