Como Visualizar videos o descargarlos desde el navegador web?

Iniciado por FreeCellnet, 23 Junio 2019, 16:17 PM

0 Miembros y 1 Visitante están viendo este tema.

FreeCellnet

Al principio Pense que era mas facil descargar un video desde el navegador cuando el video esta alojado en mi servidor, es decir, estamos visualizando un archivo, ya sea video o imagen desde una carpeta con el entorno de cualquier sistema operativo, donde  te los muestra como en cualuier Sistema operativo, una lista de archivos en filas con sus detalles, fecha de creacion, tamaño, etc etc.

Tambien se puede visualizar el video directamente en el navegador, referenciado con un link en nuestra pagina web, para el acceso local del video que tenemos alojado en nuestro servidor, visualizarlo en una pagina html, pero alojado igualmente en el servidor, y nuestro navegador ya nos permite con su barra de tareas guardar el video, por tanto lo descarga del servidor, pero no podemos saber cuantos archivos o que archivos hay dentro de esa carpeta, ya que el enlace, nos lleva directamente al video.

Quise provar esto, puse un video dentro de mi servidor, dentro de la carpeta html del servidor LEMP ,pero ....

Error, ni referenciandolo adecuadamente a traves de un enlace.

Como no pude hacer esto ahora estoy tratando de poner codigo en las paginas html, para visualizar los videos en ellas, el problema es que la conexion de mi servidor es tan pesima que no se puede visualizar decentemente, y vuelvo a lo mismo, insistir en su descarga, pero al menos, al visualizarlo en html, pueden tener la opcion de descargarselo, utilizando la barra de tareas del navegador, que seguro son compatibles con html5, los mas utilizados,  firefox, googlechrome.


He visto cosas en internet, por ejemplo para que un video sea visualizado en una pagina web html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>STANDAR HEADER VIDEOS VIEWER</title>
</head>
<body>
<video controls="">
<source src="1.mp4" type="video/mp4"/>
<source src="1.webm" type="video/webm"/>
<source src="1.ogg" type="video/ogg"/>
<source src="1.ogv" type="video/ogv"/>
<source src="1.flv" type="video/flv"/>
<source src="1.mpeg" type="video/mpeg"/>
<source src="1.mpg" type="video/mpg"/>
<source src="1.wmv" type="video/wmv"/>
<source src="1.mov" type="video/mov"/>
<source src="1.avi" type="video/avi"/>
<source src="1.mkv" type="video/mkv"/>

<p>Tu navegador no soporta HTML5</p>
</body>
</html>

pero hacer esto me implica crear una pagina para cada video que tenga que referenciar al link, es una barbarie, le tengo que decir donde esta el video y el nombre del video en cada pagina html, ya  que en cada pagina de html le tengo que decir del video que se trata..


Pregunta 1:

Puedo programar en html, una funcion o variable en el nombre de los videos, llamada nombre, para que asigne el nombre del video a visualizar automaticamente, sin tener que hacer una pagina web en html por cada video? es decir

Que le asigne automaticamente la direccion y el nombre del video, teniendo una unica pagina con todos los drivers y codecs de video y extensiones de video, para visualizar cualquier video. Aunque  dependa del navegador a utilizar.


Por ejemplo:, yo tengo una pagina con muchos links a distintos videos que seran visualizados en html, y cada link enlaza a esa misma pagina.

La variable nombre es el nombre del video, que ya viene definido en una tabla de la pagina principal por ejemplo.

MI pagina:

link 1. -el_video_de francisca.mp4
link 2. -el_video_de_manuel.ogg
link 3. -el_video_de_chantal.mkv


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>STANDAR HEADER VIDEOS VIEWER</title>
</head>
<body>
<video controls="">
<source src="nombre.mp4" type="video/mp4"/>
<source src="nombre.webm" type="video/webm"/>
<source src="nombre.ogg" type="video/ogg"/>
<source src="nombre.ogv" type="video/ogv"/>
<source src="nombre.flv" type="video/flv"/>
<source src="nombre.mpeg" type="video/mpeg"/>
<source src="nombre.mpg" type="video/mpg"/>
<source src="nombre.wmv" type="video/wmv"/>
<source src="nombre.mov" type="video/mov"/>
<source src="nombre.avi" type="video/avi"/>
<source src="nombre.mkv" type="video/mkv"/>

<p>Tu navegador no soporta HTML5</p>
</body>
</html>


Cuando se  aprieta el link 2 por ejemplo, manda el nombre -el_video_de_manuel- a la variable nombre, de la pagina que se nos abrirá, independientemente de la extension que tenga.

Para no hacer una pagina por video, es decir, no tener que crear una pagina de visualizacion por video.


Pregunta 2


Como puedo hacer para que en mi servidor, puedan acceder a contenido, sea el archivo que sea, sin tener que pasar por un entorno web, es decir, sin tener que apretar un enlace de ruta para llegar al contenido , porque a traves de un entorno de pagina web, yo si he podido enlazar imagenes locales para que sean visualizados dentro de la pagina html que estan dentro del servidor, pero nunca he podido hacerlo fuera des este entorno, tampoco videos que igualmente estan dentro del servidor localmente referenciados.

Es como un entorno de Sistema operativo, donde vemos una lista de archivos en una carpeta, como en los servidores apache.

por ejemplo este entorno tipo servidor apache, como puedo visualizarlo asi en un servidor LEMP? ¿donde tengo que poner los archivos?

https://www.losgenoveses.net/casogurtel/




Saludos

FreeCellnet

#1
Pregunta 2 no resuelta  ;D ( digo esto porque no me va cuando he hecho exactamente lo que dice la libreria de nginx, poner autoindex en esa zona del codigo) voy a seguir provando.

Vale ya se.,tengo que añadir una palabra dentro del archivo .conf el servidor, la palabra

autoindex on;


lo que no se es en que parte de


server {
 listen 80 default_server;
 listen [::]:80 default_server;

 root /var/www/html;

 index index.html index.php;

 server_name _;

 location / {
   try_files $uri $uri/ =404;
 }

       # This option is important for using PHP.
 location ~ \.php$ {
   include snippets/fastcgi-php.conf;
   fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
 }
}


https://blog.artegrafico.net/listando-contenido-de-directorios-en-un-servidor-nginx



Ellos lo ponen ahí:

server {
       listen   80;
       server_name  domain.com www.domain.com;
       access_log  /var/...........................;
       root   /path/to/root;
       location / {
               index  index.php index.html index.htm;
       }
       location /somedir {
              autoindex on;
       }
}

Pero claro, no es lo mismo que tengo yo, asi que, supongo que ami me quedaria asi


listen 80 default_server;
 listen [::]:80 default_server;

 root /var/www/html;

 index index.html index.php;

 server_name _;

 location /¿xx? {
  autoindex on;
 }

       # This option is important for using PHP.
 location ~ \.php$ {
   include snippets/fastcgi-php.conf;
   fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
 }
}

pero no se si en las xx esas va algo o nada, como por ejemplo, la carpta donde debeira poner el contenido.


Hay mas directivas

location /nombre_de_la_carpeta {
   autoindex on;
   autoindex_exact_size;
   autoindex_localtime;
}


La directiva autoindex_exact_size por defecto muestra el tamaño del fichero en bytes por lo que activándola nos redondeará su tamaño a Kb, Mb o Gb.

La directiva autoindex_localtime esta desactivada por defecto y muestra la fecha local en formato UTC.

supongo que asi me quedara mas asi:

https://blog.artegrafico.net/wp-content/uploads/2019/01/listing-directory.png

NO?

Aunque sinceramente me gusta mas el formato que tiene Apache, por lo menos te sale el icono de la carpeta, aunque supongo que con el tiempo ira mejorando, ya que los repositorios de las librerias de nginx son de enero de este mismo año.


Como no me va este opcion de poner el (autoindex on;), he pensado en instalarme el filezilla, al descubrirlo en el manual del nvu, pero la opcion server solo esta disponible para windows, mientras que la opcion cliente esta para todas las plataformas, como tengo linux, no me deja la opcion server, asi que he pensado en mirar ahora un servidor ftp, que le vaya al odroid.