.Net Blazor 0.9代理错误502仅在http post apache2和Ubuntu 16.04.6 LTS上

时间:2019-03-17 16:50:46

标签: c# http-post apache2 blazor blazor-server-side

我正在使用Blazor 0.9。 每当我尝试使用http发布时。我的浏览器(Chrome)出现代理错误502。并且仅在发布后永远无法获取。

在localhost上测试时一切正常。 我正在使用apache2反向代理。

也没有任何东西记录在数据库中。

不知道该怎么办,我不是经验丰富的Web开发人员,请提供帮助。

来自服务器的响应

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>502 Proxy Error</title>
</head><body>
<h1>Proxy Error</h1>
<p>The proxy server received an invalid
response from an upstream server.<br />
The proxy server could not handle the request <em><a href="/api/FoodHistory/test/1/5/2019">POST&nbsp;/api/FoodHistory/test/1/5/2019</a></em>.<p>
Reason: <strong>Error reading from remote server</strong></p></p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at ******* Port 80</address>
</body></html>

Apache2配置

<VirtualHost *:80>
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:5000/ retry=1 acquire=3000 connectiontimeout=28800 timeout=28800 Keepalive=On
ProxyPassReverse / http://127.0.0.1:5000/
ErrorLog /var/log/apache2/app-error.log
CustomLog /var/log/apache2/app-access.log common
</VirtualHost>

Http Post函数示例(服务器)

    [HttpPost("{user}/{day}/{month}/{year}")]
            public IActionResult PostFoodHistory(
                [FromRoute]string user, 
                [FromRoute]int day, 
                [FromRoute]int month, 
                [FromRoute]int year,
                [FromBody]Shared.PostFoodHistory postFood) {
...}

(客户端)

@inject HttpClient Http
    @functions{
    async Task Post() {
        await Http.PostJsonAsync(
                        "/api/FoodHistory/test/1/5/2019",
                        new PostFoodHistory() {
                            foodId = food.id,
                            measurement = 0,
                        }
                    );
               }
    }

2 个答案:

答案 0 :(得分:1)

终于明白了!

这是Ubuntu的权限问题。 所以我只是递归地对整个应用目录进行chmod 777修改,现在一切正常。

但是我听说您由于安全问题不应该这样做?

无论如何,问题是写权限:)

答案 1 :(得分:0)

我不确定这一点,但是请尝试...没有任何松动

  • 从模板中删除global.json文件

    • 异步任务发布(){ <.................> }

希望这对您有帮助...