CLICK HERE TO READ IN ENGLISH

 

DIESE ANLEITUNG WURDE AUSSCHLIEßLICH GESCHRIEBEN, UM KLAR ZUSTELLEN, WIE „EINFACH“ ODER „SCHWER“ DIE EINRICHTUNG WIRKLICH WÄRE, DA VIELE SEITEN FALSCHE INFORMATIONEN BEZÜGLICH u.A. DER EINRICHTUNG VON OPENBAY VERBREITEN! OB SIE ALS LESER DIESE UMSETZEN ODER NICHT, LIEGT IN IHRER EIGENEN VERANTWORTUNG. ALLES, WAS SIE MIT DIESER ANLEITUNG MACHEN, GESCHIEHT AUF EIGENE GEFAHR. ICH ALS AUTOR ÜBERNEHME KEINERLEI HAFTUNG FÜR JEGLICHE SCHÄDEN DIE DURCH DIE NUTZUNG / BEFOLGUNG / ETC DIESER ANLEITUNG ENTSTEHEN KÖNNTEN.

INDEM SIE DIE FOLGENDE ANLEITUNG LESEN, STIMMEN SIE DEM GESAMTEN, ROTEN TEXT AUF DIESER SEITE ZU BZW AKZEPTIEREN IHN.

OHNE SPHINX ENGINE

1. Vorbereitung

apt-get update

apt-get -y upgrade

apt-get -y install nano unzip php5-fpm wget php5-mysql

nano /etc/apt/sources.list

Für Debian:

Spoiler

deb http://nginx.org/packages/debian/ [Codename] nginx
deb-src http://nginx.org/packages/debian/ [Codename] nginx

[collapse]

Für Ubuntu:

Spoiler

deb http://nginx.org/packages/ubuntu/ [Codename] nginx
deb-src http://nginx.org/packages/ubuntu/ [Codename] nginx

[collapse]

ans Ende der Datei anhängen und die eckigen Klammern ersetzen (z.B. mit „wheezy“ für Debian 7.x, oder „trusty“ für Ubuntu 14.x)

apt-get update

apt-get install nginx [Beim Prompt mit y + Enter bestätigen]

openbay1

2. Vorkonfiguration

mkdir -p /var/www/openbay

nano /etc/nginx/conf.d/openbay.conf

Folgenden Spoiler einfügen und anpassen:

Spoiler

server {
listen 80;
server_name [Sub- / Domain oder IP];

root /var/www/openbay/www;
index index.php;

set $yii_bootstrap „index.php“;

charset utf-8;
gzip on;
gzip_comp_level 5;
gzip_types text/plain text/css text/javascript application/javascript application/json application/x-javascript text/xml application/xml application/xml+rss;

location / {
index index.html $yii_bootstrap;
try_files $uri $uri/ /$yii_bootstrap?$args;
}

location ~ \.(js|css|png|jpg|gif|swf|ico|svg)$ {
fastcgi_hide_header Set-Cookie;

open_file_cache max=10000 inactive=14d;
open_file_cache_errors on;
open_file_cache_min_uses 3;
open_file_cache_valid 1m;
output_buffers 1 2m;

expires 14d;
}

location ~* \.php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
set $fsn /$yii_bootstrap;
if (-f $document_root$fastcgi_script_name){
set $fsn $fastcgi_script_name;
}
fastcgi_pass localhost:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fsn;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fsn;
# fastcgi_param HTTPS $https_value;
}
}

[collapse]

Strg + O, Enter, Strg + X

nano /etc/php5/fpm/php.ini

Strg + W, „cgi.fix“ eingeben, Enter

aus:

;cgi.fix_pathinfo=1

folgendes:

cgi.fix_pathinfo=0

machen. Nun per Strg + V gedrückt halten um ans Ende der Datei gehen und folgendes einfügen:

extension=pdo.so

extension=pdo_mysql.so

Strg + O, Enter, Strg + X

nano /etc/php5/fpm/pool.d/www.conf

Nach

listen = /var/run/php5-fpm.sock

suchen und durch

listen = localhost:9000

ersetzen.

Strg + O, Enter, Strg + X

service php5-fpm restart

2. OpenBay herunterladen und vorbereiten

Bei GitHub die „master.zip“ von OpenBay herunterladen.

Um das Archiv direkt auf den Server zu laden:

wget [vollständiger Link zur .zip]

Entpacken:

unzip master.zip

cd openbay-master/src

Nun beiden Ordner verschieben. Wer kopieren will, macht aus „mv“ „cp -r“.

mv * /var/www/openbay/

cd /var/www/openbay

chown -R www-data:www-data *

service nginx restart

service php5-fpm restart

ACHTUNG: Die folgenden Schritte bis 3. sind nur erforderlich, wenn man die Datenbank selbst hosten möchte. Wem der „Aufwand“ soweit reicht o.Ä., macht einfach ab 3. weiter. Um die Datenbank selbst zu hosten, sind mindestens 3GB freier Speicher erforderlich!

apt-get install mysql-server rtorrent

mysql_install_db

mysql_secure_installation

Nun das Passwort eingeben welches man während der Installation festgelegt hat, dann n + Enter und alle weiteren Prompts einfach mit Enter bestätigen, bis man wieder beim Command Prompt ist.

rtorrent

Jetzt die Backspace Taste drücken (die längliche mit dem Pfeil nach links über Enter) und die vollständige URL zur .torrent Datei der OpenBay Datenbank einfügen (geht in PuTTY einfach per rechte Maustaste) und mit Enter bestätigen. Anschließend warten, bis unter dem Eintrag „torrents_mini.csv.gz“ „done“ steht. Ist der Download abgeschlossen und der Hash überprüft, kann rtorrent per Strg + Q geschlossen und anschließend auch gleich per

apt-get purge rtorrent

deinstalliert werden, da wir es für diesen Guide nicht mehr brauchen. Jetzt die csv entpacken:

gunzip torrents_mini.csv.gz

Dies lässt nurnoch die csv zurück, die .gz „verschwindet“. Dass MySQL auf die Datei zugreifen kann, muss sie sich an einem Ort befinden, auf den MySQL zugreifen darf. Am Einfachsten geht das folgendermaßen:

mkdir /sql

mv torrents_mini.csv /sql

Weiter geht’s:

cd

nano openbay.sql

Folgendes einfügen:

[/spoiler]

CREATE TABLE IF NOT EXISTS `torrents` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`description` text,
`category_id` tinyint(4) DEFAULT NULL,
`size` bigint(20) unsigned DEFAULT NULL,
`hash` varchar(40) NOT NULL,
`files_count` int(11) DEFAULT ‚0‘,
`created_at` datetime DEFAULT NULL,
`torrent_status` smallint(2) DEFAULT ‚0‘,
`visible_status` smallint(2) DEFAULT ‚0‘,
`downloads_count` mediumint(8) unsigned NOT NULL DEFAULT ‚0‘ COMMENT ‚umax = 16777215‘,
`scrape_date` datetime DEFAULT NULL,
`seeders` mediumint(8) unsigned NOT NULL DEFAULT ‚0‘,
`leechers` mediumint(8) unsigned NOT NULL DEFAULT ‚0‘,
`tags` varchar(500) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `hash` (`hash`),
KEY `created_at` (`created_at`),
KEY `size` (`size`),
KEY `seeders` (`seeders`),
KEY `category_id_torrent_status_visible_status`
(`category_id`,`torrent_status`,`visible_status`)
);

LOAD DATA local INFILE ‚/sql/torrents_mini.csv‘ INTO TABLE torrents FIELDS TERMINATED BY ‚|‘
(name, size, hash, downloads_count, tags, seeders, leechers);

[/spoiler]

(Danke an der Stelle an @NewEraCracker auf GitHub, von ihm ist ein Teil dieses Codes)

und per Strg + O, Enter, Strg + X speichern.

mysql -u root -p[MySQL Root User Passwort]

create database [Name für die Datenbank];

exit

Wieder im „normalen“ Prompt:

mysql -u root -p[MySQL Root Passwort] [Name der neuen Datenbank] < openbay.sql

Dies wird eine GANZE WEILE dauern (je nach CPU Performance des Servers), heißt, so eine halbe Stunde kann man schon einrechnen, wenn man keinen Dedizierten mit (Dual) Xeon usw hat 😉

Während der Ausführung sollte nichts ausgegeben werden. Kommt stattdessen eine Fehlermeldung, ist bei GitHub in der Datenbank Repo ein Thread zu finden, wo ein Torrent verlinkt ist, hinter dem sich die gesamte Datenbank als sql befindet. Herunterladen des Torrents wieder wie oben (mit rtorrent), importieren des Dumps mit dem gleichen Befehl wie der nach“Wieder im normalen Prompt“ nur, dass openbay.sql natürlich mit dem Dateinamen des Dumps, „torrents_mini.sql“ ersetzt werden muss.

3. Die letzten Schritte

Nun das, was man in der /etc/nginx/conf.d/openbay.conf als server_name angegeben hat im Browser aufrufen. Es sollte einen Folgendes erwarten:

openbay2

 

Und bei „System requirements“ sollte PDO und PDO_MYSQL einen grünen Haken haben:

openbay3

 

Falls ja – wunderbar, fast geschafft 😉

Falls nein: bitte darauf achten, die Anleitung entweder EXAKT zu befolgen und unter keinen Umständen etwas auslassen oder, falls man bewusst manches abändert, es auch im folgenden anpassen. Falls es immer noch nicht mag: Kommentarfunktion ist unten. :p

Unter General und Name können wir einen Namen für unsere „eigene Piratenbucht“ festlegen. Dieser Name wird z.B. in Browsern im Tab angezeigt.

Wer die Schritte mit MySQL übersprungen hat: Database, Sphinx, Cache und Log einfach eingeschaltet lassen.

Wer MySQL eingerichtet hat um die Datenbank selbst zu hosten: Database „ausschalten“ und in die daraufhin erscheinenden Felder folgendes Eintragen:

[/spoiler]

Host: 127.0.0.1

Port: 3306

Database: [Name den man der Datenbank gegeben hat]

Username: [„root“ wenn man keinen neuen angelegt hat]

Password: [Passwort des Nutzers den man bei „User“ angegeben hat]

[/spoiler]

Abschließend den „Deploy“ Button betätigen…

openbay4

 

Und das sollte erscheinen:

openbay5

 

Ein allerletzter Klick auf „Browse Torrents“ zeigt einem, ob auch die Verbindung mit der (Remote) Datenbank (von IsoHunt) funktioniert. Falls ja:

openbay6

 

Glückwunsch, schon hat man sein eigenes OpenBay (Frontend) auf seinem Server laufen!!

 

Sollten Probleme auftreten: Kommentare werden gerne beantwortet, wenn sie konstruktiv und ernst gemeint sind 🙂

P.S.: Eine Fortsetzung dieses Posts folgt demnächst, in dem ich auch zeigen werde, wie man die Sphinx Engine einrichtet!

[HowTo] OpenBay auf Debian / Ubuntu mit NGINX 1.6.2 aufsetzen
Markiert in:                                                                                                                                                                                     

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.