簡體   English   中英

ASP.NET CORE2.1:Ubuntu18.04/Apache2 上的主機:代理不工作

[英]ASP.NET CORE2.1: Host on Ubuntu18.04/Apache2: Proxy not working

https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-apache?view=aspnetcore-2.1

我按照上面的教程配置了我的 Ubuntu 10.08 機器來運行 Apache 服務器。 我還將機器配置為運行 Asp.NET Core 2.1 web api (MyApp.dll) 並且它運行良好(我可以在 http://localhost:5000/api/Card 上訪問它)。 我為代理配置了我的 Apache 服務器,如下所示:

須藤vi /etc/apache2/conf-enabled/myapp-netcore.conf:

<VirtualHost *:80>  
   ServerName www.myubuntuvm.com  
   ProxyPreserveHost On  
   ProxyPass / http://127.0.0.1:5000/  
   ProxyPassReverse / http://127.0.0.1:5000/  
   
   ErrorLog /var/log/apache2/netcore-error.log  
   CustomLog /var/log/apache2/netcore-access.log common  
</VirtualHost>

Web Api 的 Startup.cs:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        else
        {
            app.UseHsts();
        }

        app.UseHttpsRedirection();
        app.UseMvc();
    }

當我嘗試在瀏覽器中訪問機器的 ip(端口 80)時,我能夠看到 Apache 主頁(Apache 已安裝並且工作正常)。 根據上述配置,如果我嘗試訪問 http://<machine_ip>/api/Card,則會收到錯誤“在此服務器上找不到請求的 URL”。 我的配置正確嗎? 我該如何解決這個錯誤?

謝謝你的幫助。

編輯:我也跟着網站https://www.c-sharpcorner.com/article/how-to-deploy-net-core-application-on-linux/來配置我的機器。

我按照以下步驟使網站正常工作:

  1. 在我的 Startup.cs 中,我注釋掉了這一行

    app.UseHttpsRedirection(); 編輯:這對我解決問題沒有任何影響。 所以,留着吧。

  2. 在我的 APache2 /etc/apache2.ports.conf 中,我添加了這一行

    聽8080

  3. 在我的 /etc/apache2/conf-enabled/myapp-netcore.conf 文件中,我修改了 VirtualHosts 配置如下(此配置確保進入端口 8080 的請求被重定向到我的 ASP.NET Core 應用程序所在的 localhost:5000在跑):

     <VirtualHost *:8080> ServerName www.myubuntuvm.com ProxyPreserveHost On ProxyPass / http://127.0.0.1:5000/ ProxyPassReverse / http://127.0.0.1:5000/ ErrorLog /var/log/apache2/netcore-error.log CustomLog /var/log/apache2/netcore-access.log common </VirtualHost>
  4. 在 Ubuntu 服務器上為端口 80、5000、8080 打開端口

    須藤 ufw 允許 80/tcp 須藤 ufw 允許 8080/tcp 須藤 ufw 允許 5000/tcp

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM