关于部署上线后支付404的问题!
来源:15-9 项目部署
 
			huoqiang
2021-03-10
前端项目已经部署上线了,后端的接口是看廖师兄课程开发的,也上线了。
其他的接口都能请求成功,就是支付这里有个问题。
首先我单独在浏览器请求支付接口没问题。
然后在线上项目点击支付后就显示pay接口为404。发现这个地址栏的参数没有提交上去
下面是支付按钮的方法:
  paySubmit(payType) {
        if (payType == 1) {
          window.open('/#/order/alipay?orderId=' + this.orderId, '_blank');
        } else {
          this.axios.post('/pay', {
            orderId: this.orderId,
            orderName: 'Vue高仿小米商城',
            amount: 0.01,//单位元
            payType: 2 //1支付宝,2微信
          }).then((res) => {
            QRCode.toDataURL(res.content)
              .then(url => {
                this.showPay = true;
                this.payImg = url;
                this.loopOrderState();
              })
              .catch(() => {
                this.$message.error('微信二维码生成失败,请稍后再试!')
              })
          })
        }
      },
下面是nginx配置文件:
server
{
    listen 80;
    server_name mi.huoqiang.site;
    index index.html index.htm login.html;
    root /www/wwwroot/mi.huoqiang.site;
    
    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    #SSL-END
    
    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    #error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END
    
    #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-00.conf;
    #PHP-INFO-END
    
    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/mi.huoqiang.site.conf;
    #REWRITE-END
    
    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }
    
    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }
    
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires      30d;
        error_log off;
        access_log /dev/null;
    }
    
    location ~ .*\.(js|css)?$
    {
        expires      12h;
        error_log off;
        access_log /dev/null; 
    }
    location ^~/api/
    {
	  proxy_pass http://127.0.0.1:8080/;
    }
    location ^~/pay/
    {
          proxy_pass http://127.0.0.1:8081/pay/;
    }
    access_log  /www/wwwlogs/mi.huoqiang.site.log;
    error_log  /www/wwwlogs/mi.huoqiang.site.error.log;
}
我是新手倒腾了好久不知道是哪里的问题。
辛苦老师看一下!谢谢!
附:
a:服务器已经开放8080及8081端口
b:商品和支付接口都已经启动
写回答
	2回答
- 
				  河畔一角 2021-03-12 支付的地址可能需要廖师兄后台做一个域名添加,目前廖师兄的后台只能认识我的域名。所以你的域名是无法直接支付的。 另外,我看到你第一个生成二维码的域名有8001端口,你线上的并没有端口 152021-03-27
- 
				  河畔一角 2021-03-21 看起来确实是多了一层/api,后台没有,你要把/api删掉,前端在讲的时候,也是在vue.config.js中把/api抹掉的 012021-03-27
相似问题
