Rtorrent + rutorrent + nginx + php-fpm рдмрдВрдбрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдкрд┐рдЫрд▓рд╛ рд▓реЗрдЦ рдЗрд╕ рдмрдВрдбрд▓ рдХреА рд╕рдлрд▓ рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ред рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди, рдХреБрдЫ рдиреБрдХрд╕рд╛рди рд╕рд╛рдордиреЗ рдЖрдП рдереЗ, рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЖрд░рдкреАрд╕реА
рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рддрд╛рдХрд┐ рд░реВрдЯреАрди + рд░рдЯреЛрд░реЗрдВрдЯ рдХреЗ рд╕рд╛рде рдирдЧреАрдиреЗрдХреНрд╕ рдмрдВрдбрд▓ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд░реБрдЯреЙрд░реЗрдВрдЯ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдЯреНрд░реА рдореЗрдВ
conf / config.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
$scgi_port = 33333;
$scgi_host = "127.0.0.1";
рдЙрд╕реА рд╕рдордп, рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ rtorrent
~ / .rtorrent.rc, рдпрд╣ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЙрдХреЗрдЯ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:
scgi_port = 127.0.0.1:33333
Nginx рдореЗрдВ, рдЖрдкрдХреЛ рдЕрдм / RPC2 рдХреЗ рд▓рд┐рдП рдПрдХ рдмреИрдХрдПрдВрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ rtorrent рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ рдЖрдкрдХреЛ rtorrent рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд╛рдиреАрдп UNIX рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдкрд╣реБрдБрдЪ рдЕрдзрд┐рдХрд╛рд░
рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд░рдЯреЙрд░реЗрдВрдЯ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдУрд░ рд╕реЗ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдирдЧрдг рдФрд░ php-fpm рдбреЗрдордиреНрд╕ рдХрд╛рдо рдХрд░реЗрдВ, рд░рдЯреЙрд░реЗрдВрдЯ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдФрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдЕрдзрд┐рдХрд╛рд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдПред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХрдорд╛рдВрдб рдпрд╣ рдХрд░рддрд╛ рд╣реИ:
sudo chown -R http:http /srv/http/nginx/rutorrent.eternity/htdocs
Php-fpm рд╕реЙрдХреЗрдЯ
рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ php-fpm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЗрд╕реЗ UNIX рд╕реЙрдХреЗрдЯ рдкрд░ рд░рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
/etc/php/php-fpm.conf рдлрд╝рд╛рдЗрд▓ рдореЗрдВ,
рдЖрдкрдХреЛ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдмрд╛рд╣рд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
;listen = 127.0.0.1:9000
рдФрд░ рдиреАрдЪреЗ UNIX рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдбрд╛рд▓реЗрдВ:
listen = /var/run/php-fpm/php-fpm.sock
рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдирдЧрдиреЗрдХреНрд╕ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓
/etc/nginx/conf/nginx.conf рдореЗрдВ, рд╣рдо
рдмреИрдХреЗрдВрдб рдмреНрд▓реЙрдХ рдХреЛ рдЗрд╕ рд░реВрдк рдореЗрдВ
рдмрджрд▓рддреЗ рд╣реИрдВ :
upstream backend { server unix:/var/run/php-fpm/php-fpm.sock; }
UNIX рд╕реЙрдХреЗрдЯреНрд╕ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд▓реЛрдб рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЪреЗрдХрд╕рдо рдХреА рдЧрдгрдирд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рд╕реАрдзреЗ рдкреНрд░рд╛рдкреНрдд рдмрдлрд░ рдХреЛ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЗрд╡рд▓ рдПрдореНрдмреЗрдбреЗрдб рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рд╕реБрд░рдХреНрд╖рд╛
рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ nginx рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдпрд╣ 127.0.0.1 рдкрд░ рдЙрддрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
/etc/nginx/conf/sites-enabled/rutorrent.eternity рдлрд╝рд╛рдЗрд▓ рдореЗрдВ, рдЗрд╕ рдкрдВрдХреНрддрд┐ рдХреЛ рдЗрд╕ рд░реВрдк рдореЗрдВ
рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
listen 127.0.0.1:80;
рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЬреЛ рдХрдВрдкреНрдпреВрдЯрд░ рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рдЬрд╛рдирддрд╛ рд╣реИ, рд╡реЗрдм рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг (рдХрдо рд╕реЗ рдХрдо рдореВрд▓ рдирдЧрдиреЗрдХреНрд╕ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред
GeoIP
рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдпреЛрдЗрдк рдирд╛рдордХ рд░рдЯреЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ PHP рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ (
рдЖрд░реНрдХ рд▓рд┐рдирдХреНрд╕ ) рдпрд╣ рдХреНрд░рд┐рдпрд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ:
sudo pacman -S php-geoip
рдлрд┐рд░,
/etc/php/conf.d/geoip.ini рдлрд╝рд╛рдЗрд▓ рдореЗрдВ,
рдЖрдкрдХреЛ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдПрдХ рдкрдВрдХреНрддрд┐ рд╕реЗ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдЗрд╕ рддрд░рд╣
рджрд┐рдЦреЗ :
extension=geoip.so
рдЖрдкрдХреЛ JSON рдкреНрд▓рдЧрдЗрди рдХреЛ рднреА рд╕рдХреНрд░рд┐рдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣
jet.ini рдлрд╝рд╛рдЗрд▓ рдХреЛ
/etc/php/conf.d рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмрдирд╛рдХрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
extension=json.so
Json рдкреНрд▓рдЧрдЗрди рдХреЗ рдмрд┐рдирд╛, рдХреБрдЫ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛редрд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо
рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░реЛрдЧреНрд░рд╛рдо (
рдХрд░реНрд▓, рд╕реНрдЯреЗрдЯ, рдореЗрдбрд┐рдЕрдиреЛ ) рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реВрд░рддрд╛ рдХреЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
sudo pacman -S curl mediainfo
рджреВрд╕рд░реЗ, рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
/etc/php/php.ini рдлрд╝рд╛рдЗрд▓ рдореЗрдВ,
рдЖрдкрдХреЛ рд▓рд╛рдЗрди рдХреЛ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
;open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/
рдФрд░ рддреАрд╕рд░рд╛, рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рд░рдЯреЙрд░реЗрдВрдЯ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред CURL рдФрд░ рд╕реНрдЯреЗрдЯ рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд░рдЯреЙрд░реЗрдВрдЯ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдЯреНрд░реА рдХреЗ
conf / config.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ:
$pathToExternals = array( "php" => '', "curl" => '/usr/bin/curl', "gzip" => '', "id" => '', "stat" => '/usr/bin/stat', );
Mediainfo рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рд░рд╛рд╕реНрддрд╛
рдкреНрд▓рдЧрдЗрдиреНрд╕ / mediainfo / conf.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░
рд░рдЯреЙрд░реЗрдВрдЯ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдЯреНрд░реА рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ:
$pathToExternals['mediainfo'] = '/usr/bin/mediainfo';
рдЗрди рд░рд╛рд╕реНрддреЛрдВ рдХреЛ рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЬрд┐рд╕рдХреА рдУрд░ рд╕реЗ рдмрдВрдбрд▓ рдХрд╛рд░реНрдп рдХреЗ рд╡реЗрдм рднрд╛рдЧ рдХреЗ рдбреЗрдореЙрди рдХреЛ PATH рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╕реНрдиреИрдХреНрд╕
рдЕрдкрдиреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдИ:
#!/usr/bin/env bash delay="1000" pid1=`pidof rtorrent` if [[ $pid1 != "" ]] then notify-send -t $delay " rtorrentdтАж" sudo rc.d stop rtorrentd notify-send -t $delay "rtorrentd " else notify-send -t $delay " rtorrentdтАж" sudo rc.d start rtorrentd notify-send -t $delay "rtorrentd " fi
рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдЕрдзрд┐рдХрд╛рд░ рджрд┐рдП рдЧрдП рд╣реИрдВ:
sudo chown root:root x-rtorrentd-wrapper.sh
sudo chmod 755 x-rtorrentd-wrapper.sh
рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ
/ usr / bin рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
sudo mv x-rtorrentd-wrapper.sh /usr/bin
рдлрд┐рд░ рдХрд╣реАрдВ рдореЗрд░реЗ рдбреЗ рдХреЗ рдкреИрдирд▓ рдкрд░ (
рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ xfce рдореЗрдВ рдХрд┐рдпрд╛ ) рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдЯрди рд▓рдЯрдХрд╛ рд╣реБрдЖ рд╣реИред рдпрджрд┐ рд░рдирдЯреЛрд░реЗрдВрдЯ рдирд╣реАрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд░реЗрдЧреА, рдФрд░ рдЕрдЧрд░ рдпрд╣ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдкреЙрдк-рдЕрдк рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ libnotify рдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдмреЗрд╢рдХ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ libnotify рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
sudo pacman -S libnotify
рд░рд╛рдХреНрд╖рд╕реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛
рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ php-fpm рдФрд░ nginx рдХреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
sudo rc.d restart php-fpm nginx
рдирддреАрдЬрддрди, рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдХреНрд░реВрд░рддрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧреА рдХрд╛рдлреА рдмрдврд╝ рдЬрд╛рддреА рд╣реИред
рдЕрджреНрдпрддрди 1: рдХреБрдЫ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
рдЕрджреНрдпрддрди 2: рдЖрд░рдкреАрд╕реА рдХреЗ рд╕рд╛рде рдЕрджреНрдпрддрди рдЕрдиреБрднрд╛рдЧред рдзрдиреНрдпрд╡рд╛рдж
svin0