none
No consigo publicar una aplicacion asp.net core ¿podeis ayudarme? RRS feed

  • Pregunta

  • Muy buenas intento publicar una aplicacion asp.net core de prueba sobre todo para no ponerme a desarrollar en esta tecnologia que mas o menos la  conozco hice mis piniotos con asp.net mvc5 pero la deje precisamente porque necesita uno Windows Server pasra poublicar webs y los VPS, son mas caros por tanto me volvi a animar a desarrollar para asp.net core pero claro estoy con el tutorial unico de Microsoft para publicar una web en asp.net core.

    Set up a hosting environment for ASP.NET Core on Linux with Nginx, and deploy to it

    Claro mi intencion es hacerlo incluso sin usar el soporte SSL poir que es para una prueba y no veo la necesidad de hacerlo pues no hay manera de hacerlo funcionar y claro cuando ves estas cosas te desanimas y lo dejas despues de logicamente haber perdido horas de trabajo para intentar hacerlo funcionar.

    ¿es posible hacer funcionar en ubnutu 16.04 asp.net core? por que yo no veo la forma de hacerlo funcionar ¿podriais ayudarme? saludos.

    miércoles, 24 de mayo de 2017 9:33

Todas las respuestas

  • hola

    publicar en ubuntu es posible, ahora bien cual es el problema concreto que se presenta? algun mensje de error en concreto

    si la aplicacion la publicas en el iis, funciona ? partamos de la base si es un problema del codigo o simplemente de la configuracion del server web

    en el articulo que mencionas la publicacion usando "dotnet publish" es uno de los primeros, llegaste hasta alli?

    estas definiendo en la config del sitio que haga uso de .net core ? porque puede que estes publicando con una version full de .net

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 24 de mayo de 2017 10:57
  • Pues ahora ando probando concretamente que me daba fallos cuando ponia.

    sudo dotnet publish , por qué claro hay que tener el directorio los permisos de chown -R www-data:www-data y lo tenia para root y el servidor no me leia la web, imagino que el follon de proxy.conf y lo que viene debajo es para poder ver la web en remoto, es que el servidor linux lo tengo sin entorno grafico siquiera y la idea era poder ver la web  desde mi Windows. 

    onzulin@ubuntunet:~/web/html$ ls -la
    total 60
    drwxr-xr-x 7 www-data www-data 4096 may 24 13:37 .
    drwxrwxr-x 3 www-data www-data 4096 may 24 13:27 ..
    -rwxr--r-- 1 www-data www-data  178 may 24 13:32 appsettings.Development.json
    -rwxr--r-- 1 www-data www-data  113 may 24 13:32 appsettings.json
    drwxr-xr-x 3 www-data www-data 4096 may 24 13:37 bin
    -rwxr--r-- 1 www-data www-data  207 may 24 13:32 bower.json
    -rwxr--r-- 1 www-data www-data   36 may 24 13:32 .bowerrc
    -rwxr--r-- 1 www-data www-data  628 may 24 13:32 bundleconfig.json
    drwxr-xr-x 2 www-data www-data 4096 may 24 13:32 Controllers
    -rwxr--r-- 1 www-data www-data  598 may 24 13:32 html.csproj
    drwxr-xr-x 3 www-data www-data 4096 may 24 13:38 obj
    -rwxr--r-- 1 www-data www-data  567 may 24 13:32 Program.cs
    -rwxr--r-- 1 www-data www-data 2015 may 24 13:32 Startup.cs
    drwxr-xr-x 4 www-data www-data 4096 may 24 13:32 Views
    drwxr-xr-x 6 www-data www-data 4096 may 24 13:32 wwwroot
    onzulin@ubuntunet:~/web/html$ sudo dotnet restore
      Restoring packages for /home/onzulin/web/html/html.csproj...
      Lock file has not changed. Skipping lock file write. Path: /home/onzulin/web/html/obj/project.assets.json
      Restore completed in 2,73 sec for /home/onzulin/web/html/html.csproj.
    
      NuGet Config files used:
          /home/onzulin/.nuget/NuGet/NuGet.Config
    
      Feeds used:
          https://api.nuget.org/v3/index.json

    vale te he pegado esto para que entiendas lo que estoy intentando hacer y ando con los permisos que no se que hacer. 

    onzulin@ubuntunet:~/web/html$ sudo dotnet publish
    Microsoft (R) Build Engine version 15.1.1012.6693
    Copyright (C) Microsoft Corporation. All rights reserved.
    
      html -> /home/onzulin/web/html/bin/Debug/netcoreapp1.1/html.dll
    onzulin@ubuntunet:~/web/html$

    Todo este follon para por fin publicar la web.

    Si pongo ested comando

    onzulin@ubuntunet:/etc/systemd/system$ sudo journalctl -fu kestrel-hellomvc.service
    -- Logs begin at mié 2017-05-24 11:02:32 CEST. --
    may 24 11:02:44 ubuntunet systemd[1]: Started Example .NET Web API Application running on Ubuntu.
    may 24 11:03:49 ubuntunet dotnet-example[906]: Hosting environment: Production
    may 24 11:03:49 ubuntunet dotnet-example[906]: Content root path: /home/onzulin/web/html
    may 24 11:03:49 ubuntunet dotnet-example[906]: Now listening on: http://localhost:5000
    may 24 11:03:49 ubuntunet dotnet-example[906]: Application started. Press Ctrl+C to shut down.
    may 24 13:51:51 ubuntunet systemd[1]: Started Example .NET Web API Application running on Ubuntu.

    Bueno sin fallos ninguno no consigo que funcione la web siguiendo el tutorial como viene ahi solo que sin usar la parte del SSL entre otras cosas por qué tampoco explican que certificado SSL generar ni como generarlo existen varios let's encrypt y tambien los de pago y para hacer una prueba depublicacion no quiero usar un certificado SSL quiero publicar la web por el puerto 80 y sin usar el protocolo https usando el protocolo http, ¿como lo hago?,saludos-

    miércoles, 24 de mayo de 2017 12:05
  • hola

    >>la idea era poder ver la web  desde mi Windows

    no intentaste seguir algun otro articulo?

     Tutorial: Proxying .NET Core and Kestrel with NGINX and NGINX Plus

    este permite exponer algo mas basico y lo explica el mismo servidor nginx

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 24 de mayo de 2017 13:47
  • Lo has conseguido hacer funcionar en Linux, los permisos del directorio y los archivos tienen que estar para nginx o sea el usuario www-data o tambien tienen que estar para el usuario con el que he entrado al sistema.

    Todavia no lo he hecho funcionar yo me  fije en el tutorial que me pasastes para publicar la aplicacion en nginx, pero no hay manera  de hacerla  funcionar da fallos por tofos lados he seguido los 2 tutoriales he probado a hacer mil historias, y el resultado sigue siendo el mismo no funciona ni para atras.

    No se como Microsoft hace un tutorial que no funciona sinceramente tenia esperanza de poder usar asp.net fuera de Windows por que las raszones son bien claras un VPS en Windows mas barato de $20 no lo encuentro y en Linux soni mucho mas baratos para tener webs publicadas en internet y tambien tenia la esperanza de poder usar asp.net core y no hyay manera de hacerlo fuera de Windows.

    ¿cual es la solucion? no funciona nada de lo que dicen en ninguno de esos 2 tutoriales.

    viernes, 2 de junio de 2017 10:37