• Seedbox
  • Changer l'url de /rutorrent sans renommer son répertoire

Bonjour,

Je me demandais si il était possible de remplacer l'url par défaut de ruTorrent (https://mondomaine/rutorrent) par une autre (https://mondomaine/NewRutorrent), sans renmomer le répertoire de rutorrent et pour que l'ancienne url (.../rutorrent) ne pointe plus sur le client ?

J'ai cru comprendre que les alias de nginx servaient à ça, mais je n'arrive pas vraiment à les faire fonctionner pour ruTorrent.

J'ai par exemple essayé de remplacer ceci (rutorrent.conf) :
location ^~ /rutorrent {
	    root /var/www;

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

	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
	    }

	}
Par cela :
location ^~ /newrutorrent {
	    alias /var/www/rutorrent/;

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

	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
	    }

	}
Je suis bien redirigé sur l'index de rutorrent, mais apparemment beaucoup d'éléments ne se chargent pas : erreurs 404 not found des plugins, pas de thème chargé, client dysfonctionnel, etc...

Quelqu'un aurait une idée svp ? Merci.
Salut

essaye avec ceci
location ^~ /newrutorrent {
	    alias /var/www/rutorrent;

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

	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
	    }

	}
Cela me donne le même résultat malheureusement
Tu as pas d'autres références à rutorrent dans ton .conf ? A un autre endroit ?
Ils faut toutes les remplacer (sauf l'alias qui doit toujours taper sur ton /var/www/rutorrent)
Non je n'ai pas vraiment d'autres références (je n'ai pratiquement pas modifié le rutorrent.conf d'origine des tutos/du script auto). Seulement 2 blocks qui viennent juste à la suite du block cité plus haut en contiennent :
location ^~ /rutorrent/conf/ {
		deny all;
	}
location ^~ /rutorrent/share/ {
		deny all;
}
Mais je ne pense pas qu'il y ait de rapport. J'ai tout de même essayé de les changer, mais le résultat est le même. Mais je pense qu'il faudrait garder ces bloques intacts, même si l'alias réussi (?).

Par contre je viens de remarquer que le block de Seedbox-manager utilise un alias :
location ^~ /seedbox-manager {
        alias /var/www/seedbox-manager/public;
            include /etc/nginx/conf.d/php-manager.conf;
            include /etc/nginx/conf.d/cache.conf;
        }
Il a un include différent (php-manger.conf) des autres block sans alias.
php-manager.conf :
location ~ \.php$ {
    root /var/www/seedbox-manager/public;
    include /etc/nginx/fastcgi_params;
    fastcgi_index index.php; 
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root/index.php;
}
Le root est redéfini ici contrairement à l'include des autres block sans alias, dont celui de rutorrent (php.conf):
location ~ \.php$ {
	fastcgi_index index.php;
	fastcgi_pass unix:/var/run/php5-fpm.sock;
	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	include /etc/nginx/fastcgi_params;
}
Les paramètres de fastcgi_param sont différents aussi.

J'ai donc essayé de reprendre le contenu de php.conf initialement inclus dans la config /rutorrent, mais en ajoutant le root :
	location ^~ /newrutorrent {
	    alias /var/www/rutorrent;

	    location ~ \.php$ {
			root /var/www/rutorrent;
			include /etc/nginx/fastcgi_params;
			fastcgi_index index.php;
			fastcgi_pass unix:/var/run/php5-fpm.sock;
			fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	    }
	    include /etc/nginx/conf.d/cache.conf;
	     
	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
	    }
	}
Résultat toujours identique. Je sèche, j'ai essayé de lire un peu la documentation à propos des alias, mais pour l'instant je rame
Désolé du double post, mais le dernier me semblait déjà encombré.
J'ai trouvé une solution détournée qui à l'air de marcher sans erreur en utilisant un "bind mount" (j'avais encore des erreurs avec un lien symbolique).


J'ai tout d'abord créé un dossier dans /var/www (par exemple newtorrent qui sera la nouvelle url du client ruTorrent) :
cd /var/www
mkdir newtorrent
J'ai ensuite fait un mount bind pour que /var/www/newtorrent pointe sur /var/www/rutorrent :
mount --bind /var/www/rutorrent/ /var/www/newtorrent
Puis j'ai édité fstab pour charger la modification au redémarrage :
nano /etc/fstab
En ajoutant la ligne à la fin du fichier :
/var/www/rutorrent /var/www/newtorrent    none    bind    0       0
Puis j'ai simplement modifié la ligne "location" dans rutorrent.conf, dans le block de config rutorrent :
nano /etc/nginx/sites-enabled/rutorrent.conf
## début config rutorrent ##
location ^~ /newtorrent {
	    root /var/www;

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

	    location ~ /\.svn {
		    deny all;
	    }

	    location ~ /\.ht {
		    deny all;
            }
}
Pour finir j'ai modifié les liens de rutorrent et de la page des logs, sur la page seedbox-manager de mes users. Et enfin le lien qui pointe les logs dans le plugin linklog de rutorrent :
nano /var/www/rutorrent/plugins/linklogs/conf.php
<?php

$host = $_SERVER['HTTP_HOST'];
/* Indiquez l'url complète des logs si besoin */
$url = '//'. $host .'/newtorrent/logserver/access.html';

$onglet = true;
Ca à l'air de marcher maintenant. Je reposterai en cas de problème.



J'ai encore une interrogation sur ces blocks de rutorrent.conf : dois-je changer les locations pour /newtorrent/(...), ou dois-je ajouter 2 blocks identiques avec les locations /newtorrent/(....) (ce que j'ai fait pour l'instant) ?
        location ^~ /rutorrent/conf/ {
                deny all;
        }

        location ^~ /rutorrent/share/ {
                deny all;
        }
Ca aurait pas été plus simple de faite un sous-domaine ?
Hellou !

Oui sans doute, mais je n'ai pas encore compris comment faire, ou si c'était même possible gratuitement avec freenom (.tk)
Sinon ça doit forcément être faisable seulement avec le conf nginx (alias ou autre), mais je n'y arrive pas ^^'
Yop,
Tu as un nom de domaine ? Tu as accès à ta conf DNS ? (pour ajouter un sous-domaine ?)
Voilà les options que j'ai chez freenom pour mon domaine actuel gratuit :
-> Serveurs de nom : screenshot
-> Enregistrer des records 'glue' : screenshot

Edit : après m'être connecté en anglais, une option est apparue "manage dns", je suppose que c'est ça, mais je ne peux rien faire "not accessible yet". Je pense que ce doit être payant.
Salut
Juste pour info, il y a aussi la méthode de bourrin du changement de nom du dossier ruTorrent qui marche très bien ^^
mv /var/www/rutorrent /var/www/newrutorrent
modif du nom dans rutorrent.conf
        ## début config rutorrent ##

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

            location ~ /\.svn {
                    deny all;
            }

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

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

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

        ## fin config rutorrent ##
et modifier la dernière ligne dans les .rtorrent.rc users
execute = {sh,-c,/usr/bin/php /var/www/newrutorrent/php/initplugins.php <username> &}
on relance nginx et rtorrent et ça fait le job...
Ex.
Salut ex_rat,

Yep effectivement, j'avais eu un peu peur de "casser" des dépendances extérieures au début en faisant la méthode "bourrin"

J'avais essayé finalement galérant avec les alias, mais j'avais tout de suite constaté un 1er problème : mes torrents ne démarraient plus automatiquement après ajout.
J'avais effectivement trouvé cette ligne dans les .rtorrent.rc des users (qui se rapporte à leur démarrage justement si je me rappelle bien (?))
execute = {sh,-c,/usr/bin/php /var/www/rutorrent/php/initplugins.php <username> &}
que j'avais modifié, mais le problème persistait après redémarrage de rutorrent via le manager, donc je n'ai pas cherché plus loin en craignant d'autres soucis.

M'enfin le mount bind à l'air de bien marcher dans mon cas 😮D, je l'utilise aussi pour partager des dossiers entre utilisateurs dans le répertoire de téléchargement (ils peuvent regarder/télécharger le contenu partagé depuis le file manager sans pour autant modifier/déplacer/supprimer le contenu partagé des autres).
Répondre…