nginx 部署vue环境

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

创建一个文件夹

cd /usr/local mkdir nginx cd nginx

下载Nginx tar包 和 解压

wget http://nginx.org/download/nginx-1.13.7.tar.gz tar -xvf nginx-1.13.7.tar.gz

安装nginx

进入nginx目录

cd /usr/local/nginx/nginx-1.13.7 (当前下载的nginx的版本)

执行命令

./configure

执行安装make命令 ( 可以先查看当前是不是支持make命令 make -v )

yum -y install gcc automake autoconf libtool make

执行make install命令 安装nginx

make && make install

好了如果访问 当前IP有页面显示的话那么nginx就是安装成功了

现在开始设置Nginx的配置文件

Nginx的配置文件路径 /user/local/nginx/conf/nginx.conf

在server里面新增 一项

location / { alias /home/wwwroot/default/dist/; #默认访问vue静态文件目录(dist路径) index index.html; #默认访问文件 try_files $uri $uri/ /index.html; #目录不存在则执行index.html }

如还是不懂的话就看下面吧!重要的地方标了两个 ** 就是配置读取vue项目静态文件路径(这个是全部Nginx配置文件)

server { listen 80 default_server reuseport; include enable-php.conf; ** location / { alias /home/wwwroot/default/dist/; #默认访问目录 index index.html; #默认访问文件 try_files $uri $uri/ /index.html; #目录不存在则执行index.html } location /nginx_status { stub_status on; access_log off; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } location ~ .*\.(js|css)?$ { expires 12h; } location ~ /.well-known {

allow all; } location ~ /\. { deny all; }

 

1、修改Nginx的配置文件 xxx.conf

location /api { rewrite ^.+api/?(.*)$ /$1 break; //可选参数,正则验证地址 include uwsgi_params; //可选参数,uwsgi是服务器和服务端应用程序的通信协议,规定了怎么把请求转发给应用程序和返回 proxy_pass https://www.xxxxx.cn:444; #此处修改为自己的请求地址,必填 } ###api为本地开发时,在config/index.js中的proxyTable: {}配置的请求代理 ###根据具体情况修改

  2、记得重启Nginx服务,使修改生效

举例:

location /api { rewrite ^.+api/?(.*)$ /$1 break; include uwsgi_params; proxy_pass https://movie.douban.com; } location /bpi { rewrite ^.+bpi/?(.*)$ /$1 break; include uwsgi_params; proxy_pass https://cdnopenapialifc.agaege.com/; }

 

Nginx 解决生产环境vue跨域问题

 

https://www.cnblogs.com/zhaohongcheng/p/11250161.html

 

Vue本地代理举例:

module.exports = { publicPath: './', devServer: { proxy: { '/api': { target: 'https://movie.douban.com', ws: true, changeOrigin: true, pathRewrite: { '^/api': '' } }, '/bpi': { target: 'https://cdnopenapialifc.agaege.com/', ws: true, changeOrigin: true, pathRewrite: { '^/bpi': '' } } } }, pwa: { iconPaths: { favicon32: 'favicon.ico', favicon16: 'favicon.ico', appleTouchIcon: 'favicon.ico', maskIcon: 'favicon.ico', msTileImage: 'favicon.ico' } } }

  

Vue 本地代理编辑好后,能实现跨域获取接口数据,但是打包后在生产环境接口报错404,要怎样才能解决生产环境跨域问题呢?

在开发环境配置好本地代理后,使用Nginx反向代理解决生产环境跨域问题!

1、修改Nginx的配置文件 xxx.conf

location /api { rewrite ^.+api/?(.*)$ /$1 break; //可选参数,正则验证地址 include uwsgi_params; //可选参数,uwsgi是服务器和服务端应用程序的通信协议,规定了怎么把请求转发给应用程序和返回 proxy_pass https://www.xxxxx.cn:444; #此处修改为自己的请求地址,必填 } ###api为本地开发时,在config/index.js中的proxyTable: {}配置的请求代理 ###根据具体情况修改

  2、记得重启Nginx服务,使修改生效

举例:

location /api { rewrite ^.+api/?(.*)$ /$1 break; include uwsgi_params; proxy_pass https://movie.douban.com; } location /bpi { rewrite ^.+bpi/?(.*)$ /$1 break; include uwsgi_params; proxy_pass https://cdnopenapialifc.agaege.com/; }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值