hello

si je comprends bien , c'est juste pour lister les fichiers ?

aucune modification possible (suppression :renomer .....
merci a toi pour l'info

j'avais tester h5ai sur le vps scaleway car fournie par défaut avec leur imagehub torrent 1.2

on ne peut pas faire de motif ... sur rutorrent je trouve cela pas pratique , meme chose avec filezilla.

je vais regarder "explorer"
De rien kimikimi mais je crois, il y a peut-être une légère méprise. Le plugin FileManager (de ruTorrent) le permet ainsi que d'autre chose (archivage etc).
Par contre, j'ignore si l'image fournit par Scaleway l'inclut. Tandis que c'est certain si l'on se sert du script de Ex_rat ou suit le tutoriel (de Magicalex).
aucune meprise

je parlais bien de filemanager

(ce qui n'enlève rien a ex_rat ou magicalex sur leur savoir faire
Ha d'accord, je vois car c'est juste. Il y a des choses qui ne sont forcément dès plus intuitive (ou accessible). Il m'est arrivé d'y songer parfois de temps en temps à cause de ses limites.
j'ai besoin d'un accès sous forme d'explorateur ou findeur " "

avec la possibilité de renommer , supprimer
Bon comme j'ai pas voulu lâcher l'affaire, j'ai réussi à le faire fonctionner, je vais donc vous donner ma méthode basée sur la volonté que les différents utilisateurs de la seedbox puissent télécharger les fichiers des autres.

Création du dossier
mkdir /var/www/allfiles/
On créé les liens symboliques vers les dossiers qu'on veut voir listés
ln -s /home/gormson/termines gormson
et je répète pour chaque utilisateur. Comme ça, le contenu du dossier "termines" de chaque user sera listé dans un dossier à son nom.

maintenant on rapatrie la dernière version (à la date de ce post) et on dézip
wget https://release.larsjung.de/h5ai/h5ai-0.28.1.zip
unzip h5ai-0.28.1.zip
rm h5ai-0.28.1.zip
maintenant on passe à la configuration nginx, ayant un nom de domaine, j'ai créé un sous domaine allfiles.domaine.tld

on créé un fichier de conf nginx dédié c'est plus propre
nano /etc/nginx/sites-enabled/h5ai.conf
et on colle le pavé suivant (bien différent de celui du tuto au final mais compatible avec la dernière version de h5ai.
J'y ai aussi intégré l'auth de la seedbox pour les utilisateurs.
Pensez à changer le chemin du root (ici root /var/www/allfiles/😉 si vous n'avez pas pris le même chemin que moi.
server {
        listen 80;
        server_name allfiles.domaine.tld;

        auth_basic "seedbox";
        auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd";

        root /var/www/allfiles/;
        index index.html;

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        location / {
                index /_h5ai/public/index.php;
                try_files $uri $uri/ /_h5ai/public/index.php
                autoindex on;

                location ~ \.php {
                        try_files $uri $uri/ index.html index.php =404;

                        fastcgi_param  QUERY_STRING $query_string;
                        fastcgi_param  REQUEST_METHOD $request_method;
                        fastcgi_param  CONTENT_TYPE $content_type;
                        fastcgi_param  CONTENT_LENGTH $content_length;

                        fastcgi_param  SCRIPT_NAME $fastcgi_script_name;
                        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_param  REQUEST_URI $request_uri;
                        fastcgi_param  DOCUMENT_URI $document_uri;
                        fastcgi_param  DOCUMENT_ROOT $document_root;
                        fastcgi_param  SERVER_PROTOCOL $server_protocol;

                        fastcgi_param  GATEWAY_INTERFACE CGI/1.1;
                        fastcgi_param  SERVER_SOFTWARE nginx;

                        fastcgi_param  REMOTE_ADDR $remote_addr;
                        fastcgi_param  REMOTE_PORT $remote_port;
                        fastcgi_param  SERVER_ADDR $server_addr;
                        fastcgi_param  SERVER_PORT $server_port;
                        fastcgi_param  SERVER_NAME $server_name;

                        fastcgi_pass unix:/var/run/php5-fpm.sock;

                        fastcgi_index index.php;
                }
        }
}
On sauvegarde et on relance nginx
/etc/init.d/nginx restart
J'ai testé et ça fonctionne impeccable.
Tant mieux et merci gormson, une épine de moins. Je me dis, aux premiers abord, il n'y a peut-être pas de différence mais si tu pouvais juste essayer de remplacer ce pavé par ceci :
location ~ \.php
{
	try_files $uri $uri/ index.html index.php =404;
	include fastcgi_params;
	## Faudrait-il inclure le chemin (au complet) ?
	## include /etc/nginx/fastcgi_params;
}
Ou alors par ça :
location ~ \.php
{
	try_files $uri $uri/ index.html index.php =404;
	include fastcgi_params;
	fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
	fastcgi_pass unix:/var/run/php5-fpm.sock;
	fastcgi_index index.php;
}
Cela pourrait apporter un léger éclaircissement. Je présume que tu as ce fichier (à l'emplacement indiqué).
Je viens d'essayer, et ça semble fonctionner, en gros c'est tout le contenu du fichier qui était déjà dispo par ailleurs ^^

En tous les cas, mes utilisateurs sont contents
C'est ce qui compte. Bien on progresse, encore une fois merci gormson et c'est bien ça. ^^
4 mois plus tard

Super merci beaucoup pour ce tuto qui marche très bien !
Par contre petite question :
Sur le lien de démo : https://larsjung.de/h5ai/demo/ il est possible de sélectionner un dossier complet ou plusieurs ficher avec une petite coche bleu. Hors sur mon serveur je n'ai pas cette fonctionnalité.

Es-ce normal ?
Merci

Si tu tant ai pas préoccuper avant, oui
Ça doit être un "featurs" du dev non inclue dans sa version publique.

Il existe pas mal de fork sur Github, tu devrais y faire un tour.

Édit: je viens de regardez sur le mien je n'ai pas cette option, MAIS je ne suis pas à jour
As-tu pris la dernière release ?

un mois plus tard

Merci pour le tuto c'est top ce système !

j'en ai bavé à faire mon fichier de config, après 1001 erreurs 404 403 file not found, après trois clavier balancé par la fenêtre (je plaisante ).
J'arrive à accéder à mon lien symbolique avec mes ID & MDP rutorrent, mais parcontre c'est d'une laideur je navigue avec un autoindex basique. Le système _h5ai n'a pas l'air d'être trouvé ou de se lancer... Bref trêve de blablatterie.

Mon fichier rutorrent.conf:

server {
listen 80 default_server;
listen 443 default_server ssl http2;
server_name _;

index index.html index.php;
charset utf-8;
client_max_body_size 10M;

ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;

include /etc/nginx/conf.d/ciphers.conf;

access_log /var/log/nginx/rutorrent-access.log combined;
error_log /var/log/nginx/rutorrent-error.log error;

error_page 500 502 503 504 /50x.html;
location = /50x.html { root /usr/share/nginx/html; }

auth_basic "seedbox";
auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd";

location = /favicon.ico {
	access_log off;
	log_not_found off;
}
## Portail ##

location ^~ / {
	root /var/www;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;
	satisfy any;
	allow all;
}

## fin portail ##

    ## Debut config telechargement et visionneuse ##
    location ^~ /cinema {
root /var/www/blackbox;
include /etc/nginx/conf.d/php.conf;
include /etc/nginx/conf.d/cache.conf;
#On appelle h5ai
    index index.html index.php _h5ai/public/index.php;
#On autorise le listing des fichiers
    autoindex on;
#Facultatif on utilise l'auth de rutorrent
    #auth_basic "whiterabbit";
    #auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd";

}

Fin config t & v

## début config accueil serveur ##

location ^~ /blackbox {
	root /var/www;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;
	satisfy any;
	allow all;
}

## fin config accueil serveur ##

## début config rutorrent ##

location ^~ /rutorrent {
	root /var/www/blackbox;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;

	location ~ /\.svn {
		deny all;
	}

	location ~ /\.ht {
		deny all;
	}
}

location ^~ /rutorrent/conf/ {
	deny all;
}

location ^~ /rutorrent/share/ {
	deny all;
}

## fin config rutorrent ##

## début config munin ##

location ^~ /graph {
	root /var/www/blackbox;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;
}

location ^~ /img {
	root /var/www/blackbox;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;
	error_log /dev/null crit;
}

location ^~ /monitoring {
	root /var/www/blackbox;
	include /etc/nginx/conf.d/php.conf;
	include /etc/nginx/conf.d/cache.conf;
	auth_basic "Monitoring";
	auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_user";
}

location ^~ /nginx_status {
	stub_status on;
	access_log off;
	satisfy any;
	allow 127.0.0.1;
	deny all;
}

## fin config munin ##

 location ^~ /seedbox-manager {
            alias /var/www/blackbox/seedbox-manager/public;
            include /etc/nginx/conf.d/php-manager.conf;
            include /etc/nginx/conf.d/cache.conf;
    }

## fin config seedbox-manager ##
  

## config utilisateurs ##

    location /USER {
            include scgi_params;
            scgi_pass 127.0.0.1:5001;
            auth_basic "seedbox";
            auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_user";
    }

    location /USER2 {
            include scgi_params;
            scgi_pass 127.0.0.1:5003;
            auth_basic "seedbox";
            auth_basic_user_file "/etc/nginx/passwd/rutorrent_passwd_user2";
    }

}

Ensuite pour être précis : Le dossier base je l'ai balancé à la poubelle mon arbo c'est : var/www/MA_racine_Ftp/blackbox

Dans blackbox se trouvent : seedbox-manager / rutorrent / graph / _h5ai / monitoring / cinema

dans mon dossier cinema se trouve mon lien symbolique torrents soit (/home/user/torrents).

J'ai un second problème quand je vais sur mon Graph je ne vois pas les images... l'url est:
<img src="../graph/img/@RTOM@_spdd-day.png">

En vous remerciant par avance

Salut
Concernant:

J'ai un second problème quand je vais sur mon Graph je ne vois pas les images... l'url est:
<img src="../graph/img/@RTOM@_spdd-day.png">

Faut bien voir qu'en changeant les dossiers comme ça à l'arrache, tu es en train de ruiner tout ce que le script a mis en place.
Quand on veut toucher à tout comme ça, on utilise pas un un script auto, on fait son install' à la main.(surtout pas le full, le light encore pourquoi pas).

En bougeant "monitoring", tu me déglingues munin, la page de graph et l'ensemble des liens symboliques qui font tourner l'ensemble.
Au passage , le script qui fournit la page de log html avec l'icone dans ruTorrent est parti en couille aussi parce que sinon c'est pas drole !

Alors quelques piste, mais attends toi à galèrer un peu
Pour le log html c'est ici: /usr/share/scripts-perso/logserver.sh
et pour munin, le script utilise ces deux tutos (très très modifié):
https://mondedie.fr/d/5195-Tuto-Installer-les-plugins-rtorrent-de-Munin-lighty-nginx
https://mondedie.fr/d/5461-Tuto-Comparateur-de-stats-Munin-V2-lighty-nginx
mais le plus sage est de désinstaller munin et les graphs parce que t'es pas sorti là pour rattraper le coup ^^

Pour la suite, je passe mon tour moi, je cautionne pas trop la manœuvre on va dire...
Bon week-end les gars, soyez sage
Ex.

Merci de même @ex_rat.et à mon avis, désolé @Captain_Alw mais je crains de devoir passer mon tour aussi... Comme il s'agit de ce h5ai, disons que cela s'annonce assez mal... À moins que l'une de mes notes (ci-dessous) m'éclaire ?

Disons que a priori, je constate la présence de quelques progrès. Comme désormais mon lien symbolique fonctionne. De plus, si je me fie à ce fichier fastcgi_params, cette ligne s'avère au final absente :

fastcgi_param	PATH_INFO	$fastcgi_path_info;

Il y a peut-être un rapport ? C'est possible mais... je vais poursuivre mes recherches (un peu) à partir par exemple de cette page (du wiki de Nginx)..
Donc, il existe une nouvelle version car maintenant il s'agit de la v0.29.0 (de H5ai).

NB : Un conseil : afficher le code source (de la page) si vous souhaitez comparer les résultats (car il s'agit d'un tableau). C'est nettement plus lisible.

Désolé Ex_rat si j'ai saccagé ton oeuvre ce n'étais pas mon intention, j'aime bien bidouiller (même trop)... je pense que pour faire plus simple je vais réinitialiser ton script afin de bien me familiariser avec tout ce système de seedbox et ces services additionnel ainsi que Nginx. Je m'attaquerai à une installation manuelle plus tard, car j'aime bien savoir ce que j'installe et avoir un contrôle de A à Z sur ce que je fais.

Cordialement,

Wagner je te remercie pour ton aide comme dit plus haut je vais réinitialiser mon installation au propre afin que mes demandes de support soit faisable et cohérente... Merci encore à vous tous.

De rien @Captain_Alw et désormais, j'ai une bonne nouvelle car oui cela fonctionne.
Grosso modo, voici d'autres petites choses à savoir :

  • le nom de domaine n'est point une obligation

@Captain_Alw Le système _h5ai n'a pas l'air d'être trouvé ou de se lancer...

  • ce H5ai requiert des fonctionnalités lié au HTML5 (dont le SessionStorage ou LocalStorage). Autrement, je résume, l'interface ne se chargera point. Lorsque c'est désactivé, on obtient via la console (du navigateur web) un (ou des) message(s) comme celui-ci : TypeError: n is null. Alors c'est peut-être l'origine de cette impression ?
  • je n'aurais pas eu besoin de la directive autoindex, ni de compléter le fichier fastcgi_params
Image thumbs no
PHP GD extension with JPEG support available
Movie thumbs no
Command line program avconv or ffmpeg available
PDF thumbs no
Command line program convert or gm available
## Cela provient de la page d'index public. Afin d'accéder à cette page, il faut juste rajouter ceci (à la fin de l'adresse url) : "/_h5ai/public/index.php".
  • il faudrait peut-être corrigé ces points ? À moins que cela soit facultatif ?

Bonjour,

J'aimerais lister le contenu de /home/user/rsync, qui contient le dossier _h5ai et le contenu du rsync.

Voici comment j'ai fait mon rutorrent.conf:

location ~ /repo {
root /home/rsync;
include /etc/nginx/conf.d/php.conf;
include /etc/nginx/conf.d/cache.conf;
index index.html index.php /_h5ai/public/index.php;
#On autorise le listing des fichiers
autoindex on;
}
}

J'ai ensuite créé le lien symbolique:

cd /var/www/
ln -s /home/rsync repo

Comme me l'a fait remarqué un pote, toute la place est dans home et non dans var. D'où le choix de rsync dans home.

Je n'ai pas installé rutorrent avec l'excellent script de Ex-rat mais bien l'autre tuto présent sur mondedie. Je n'ai pas /var/www/base mais juste /var/www

Quand je vais sur https://xxx.com/repo, j'ai un joli file not found.

Quelqu'un a une idée pour moi?

Bonne journée à tous!

Bonsoir,

d'abord merci car ainsi je vais pouvoir compléter un brin. Alors non @zarev, cela ne provient pas de là car il (base) n'existe point.
C'est peut-être juste un oubli (les chemins; ligne root et ln) ? Désolé mais il me sera très difficile d'avoir une autre idée car je n'ai eu aucun souci lorsque j'ai recopié ce dossier (le h5ai).

Bonne journée !

    Salut, merci pour le tuto, c'est possible de partager des liens de téléchargement avec h5ai ?

      geekso En l'état non. Hormis clic droit, copier l'url du lien.

      Après il existe peut-être des codes pour avoir un genre de permission de créer un lien, ça je sais pas.

      Wagner Oui je sais que j'ai pas base. Mais j'ai adapté le .conf. Pour le chemin relatif c'est bon, j'en suis presque sur 🙂 Presque...

      Salut
      moi je verrais bien un truc comme ça

      location ~ /repo {
      root  /var/www/;
      include /etc/nginx/conf.d/php.conf;
      include /etc/nginx/conf.d/cache.conf;
      index index.html index.php /repo/_h5ai/public/index.php;
      #On autorise le listing des fichiers
      autoindex on;
      }
      

      puis

      cd /var/www/
      ln -s /home/rsync repo
      

      et mettre le dossier _h5ai dans /var/www/repo
      mais non testé

        xavier Bonjour Xavier,

        Merci pour ta réponse Xavier, j'avais déjà essayé cette solution, mais cela ne fonctionne pas.

        Vraiment étrange 🙂

        J'ai cru bon de le corrigé @zarev car je ne l'avais pas mentionné. De plus, je me disais, en fait il pourrait s'agir d'une question (ou dans un avenir proche).
        Alors il s'agit peut-être de l'url ? Le nom d'un dossier ? Cela doit correspondre avec la directive location.
        Il faut peut-être (re)créer un dossier (repo ou un autre ?) ? Il est bien au complet ? Il n'y a pas eu de souci lors de l'extraction de H5ai ?

        Disons que parfois les logs (de Nginx) sont assez étrange (des incohérences), ni très parlant... Comme j'ai pu le remarqué, ils contiennent même des erreurs (notamment un ordre inversé, un doublon, etc) dans les urls) dont voici 5 exemples :

        2017/01/12 [error] : "/_h5ai/public/UnDossierQuelconque/_h5ai/public/index.php" is not found (2: No such file or directory),
        	request: "GET /UnDossierQuelconque/_h5ai/public/ HTTP/1.1"
        2017/01/12 [error] : "/_h5ai/public/UnDossierQuelconque/_h5ai/index.php" is not found (2: No such file or directory),
        	request: "GET /UnDossierQuelconque/_h5ai/"
        2017/01/12 [error] : "/_h5ai/public/UnDossierQuelconque/partage/index.php" is not found (etc),
        	request: "GET /UnDossierQuelconque/partage/"
        2017/01/12 [error] : "/UnDossierQuelconque/partage/partage/index.html" is not found (etc),
        	request: "GET /partage/"
        2017/01/12 [error] : "/partage/UnDossierQuelconque/_h5ai/partage/index.php"" is not found (etc),
        	request: "GET /UnDossierQuelconque/_h5ai/partage/"

          Merci Wagner et xavier mais pour finir un fichier apache a réglé le souci.

          Une très bonne journée à vous et merci pour votre aide!

          2 mois plus tard

          bonsoir je voudrais installer h5ai, j'ai installé le script de Ex_rat, j'ai 3 utilisateur : usrbox1,usrbox2,usrbox3
          par contre dans le dossier /etc/nginx/conf.d j'ai que 2 fichier : ciphers.conf et default.conf
          merci de m'eclairer pour l'installe et la configuration

          Salut
          C'est une install' script faite aujourd'hui ? Parce que cache.conf/php.conf n'existe plus depuis ce matin

          Tu retrouves l'équivalent au début de ton fichier rutorrent.conf.
          Donc si tu ajoutes de la conf dans le même fichier ce sera bon en virant

          	include /etc/nginx/conf.d/php.conf;
          	include /etc/nginx/conf.d/cache.conf;

          Si c'est dans un autre , tu reprends la même chose que dans le rutorrent.conf et ça va le faire

                  location ~ \.php$ {
                          fastcgi_index index.php;
                          include /etc/nginx/fastcgi_params;
                          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                          fastcgi_pass unix:/var/run/php5-fpm.sock;
                  }
          
                  location ~* \.(jpg|jpeg|gif|css|png|js|map|woff|woff2|ttf|svg|eot)$ {
                          expires 30d;
                          access_log off;
                  }

          Ex.

          edit: je crois que je vais les remettre en place demain matin même si y'en plus besoin pour éviter que ça coince sur les tutos du site... j'avais pas prévu le coup !
          edit 2: les fichiers sont de nouveau en place sur github pour les prochaines install' 😉

          nano /etc/nginx/nginx.conf
          nano /etc/nginx/rutorrent.conf
          ## Autrement, il doit s'agir de ce fichier : 'nano /etc/nginx/sites-enabled/rutorrent.conf'

          Bonsoir,

          normalement ces 2 fichiers @thephenix83 existent. Néanmoins, cela n'a guère d'importance (lequel) car il devrait suffir d'y rependre les instructions (et de le créer si besoin).
          Il faut toujours faire très attention avec les chemins car cela risque (assez fréquent) de nous le faire croire (à tort : fichier vide ou inexistant car il (le chemin) s'avère incomplet ou mal renseigné).

          ok j'ai viré les 2 lignes dans le rutorrent.conf
          par contre le lien symbolique tu le fais bien dans /var/www/base
          et tu fais un: ln -s /home/tonuser/torrents partage
          avec le dossier _h5ai qui est dans : /var/www/base

          apres tu tape : https://tonip/partage
          c'est bien ça ?
          car moi ça marche page not found

          maintenant j'ai ça :

          <?php

          define('H5AI_VERSION', '0.29.0');
          define('MIN_PHP_VERSION', '5.5.0');

          if (!function_exists('version_compare') || version_compare(PHP_VERSION, MIN_PHP_VERSION, '<')) {
          header('Content-type: text/plain;charset=utf-8');
          exit('[ERR] h5ai requires PHP ' . MIN_PHP_VERSION . ' or later, but found PHP ' . PHP_VERSION);
          }

          if (substr(H5AI_VERSION, 0, 1) === '{') {
          header('Content-type: text/plain;charset=utf-8');
          exit('[ERR] h5ai sources must be preprocessed to work correctly');
          }

          require_once DIR . '/../private/php/class-bootstrap.php';
          Bootstrap::run();

          Pour que cela puisse fonctionner, il faut l'ensemble de ces lignes (cf la partie location PHP).
          C'est impératif, autrement Nginx ne pourra l'interpréter (tout le code PHP).

            Wagner merci bien j'ai reussis et j'ai enfin compris
            location = la ou est le dossier _h5ai

            bon apres bidouillage a mort ça y est ça fonctionne, mais du coup rien a voir avec le suivi du tuto

            8 jours plus tard

            bonjour tout le monde

            je n'ai pas réussi à trouver comment mettre à jour H5AI
            pour info et sauf erreur de ma part je suis en 0.28.1

            define('H5AI_VERSION', '0.28.1');

            j'ai vu que la dernière version est la 0.29 ... y'a t-il vraiment un intérêt à faire cette MAJ ??

            Cordialement