Páginas

Mostrando entradas con la etiqueta Ubuntu. Mostrar todas las entradas
Mostrando entradas con la etiqueta Ubuntu. Mostrar todas las entradas

2018/05/10

Pasos para hacer un Upload de 100 Megabytes bajo Nginx y ASP.NET Core 2


Pasos para hacer un Upload de 100 Megabytes bajo Nginx y ASP.NET Core 2

(y que no nos salga el error "413 Payload Too Large" (Kestrel) o  "413 Request Entity Too Large" (Nginx) )


Paso 1: Modificar nuestro web.config

<configuration>
  <system.web>
     <httpRuntime maxRequestLength="102400" /><!-- 100 MB in kilobytes -->
  </system.web>
  <system.webServer>

   ...
  <security>
    <requestFiltering>
      <requestLimits maxAllowedContentLength="102428800" /> <!--100 MB in bytes -->
     </requestFiltering>
  </security>

...
 </system.webServer>


Paso 2: Modificar nuestra configuración de Nginx

En mi caso tengo una configuración propia en /etc/nginx/sites-enabled/proyecto.conf
pero también es factible modificar /etc/nginx/nginx.conf

Añadiendo
client_max_body_size 100M; #si lo establecemos a 0 no hay límite.
dentro de la sección location / {} ,y server {..}, aunque también he leído que  haría falta en http {...} de nginx.conf

En mi caso yo lo he establecido en location y en server, y me ha funcionado.

Acordarse de luego hacer un nginx -s reload o service nginx reload


Paso 3: Modificar el comportamiento Kestrel

Este paso no aparece en todos los sitios y es esencial.

Nos vamos a Program.cs 

.UseKestrel(options=>
 {
   options.Limits.MaxRequestBodySize = 102428800; //100 Megas en bytes
 })





2018/03/23

Cómo publicar un proyecto web de ASP.Net Core 2 en Ubuntu

1) Estando en un directorio del proyecto bajo Windows, publicamos de esta forma:

    dotnet publish -r ubuntu.16.10-x64 -o C:\Proyectos\ProyectoPublish

    C:\Proyectos\ProyectoPublish es la ruta de destino donde publicaremos.


2) Copiamos la publicación y la movemos a la carpeta Ubuntu /var/www/ProyectoPublish


3) Ponemos en marcha el proyecto publicado:

  a) Dentro de la ruta donde está el proyecto publicado (/var/www/ProyectoPublish/), ejecutar

     dotnet nombreProyecto.dll
   
     (Si no tenemos dotnet instalado mirar la siguiente página https://docs.microsoft.com/es-es/dotnet/core/linux-prerequisites?tabs=netcore2x )
   
  b) Entrar en

        http://localhost:5000/

MsiInv o cómo obtener información del software instalado en tu ordenador (en Windows)

Pues como dice el título, si quieres saber realmente qué software tienes instalado en tu computadora con el sistema operativo Windows, recom...