Hallo liebe Leute,
da ich nun nicht mehr für psfgame.com entwickle, will ich die letzte Version des Codes, an dem ich gearbeitet habe, teilen. Stand 29.06.2014.
Ich komm' dann gleich mal zur Sache
Anforderungen
Minimale Anforderungen:- Apache2, PHP5, MySQL
- vServer
- 4 GB RAM, Dualcore-Prozessor ~2 GHz
- Ein Ressourcenpaket
- PHP/SQL-Kenntnisse
Empfohlene Anforderungen:- Apache2, PHP5, getunter MySQL-Server, der nur auf MyISAM setzt
- Debian 7.5 oder Gentoo
- Dedizierter Server (root oder managed)
- 16 GB RAM, Quadcore-Prozessor ~3 GHz
- PHP/SQL/JS/AJAX-Kenntnisse
- Ein Ressourcenpaket
Ausdrücklich NICHT empfohlen:
- Jede Art von Webhosting
a) werden exec() und system() i.d.R. nicht unterstützt
b) ist die Performance den Anforderungen nicht gewachsen
- Ohne jegliches Wissen einen Server zu starten.
a) bringt ein Server eine große Verantwortung mit sich, da ich NICHT garantiere, dass jegliche, denkbare Lücken geschlossen sind. Ich habe mir natürlich große Mühe gegeben und am Ende schien die Source sicher zu sein, aber es ist natürlich ein Katz-und-Maus-Spiel. Wer ohne Kenntnisse von Serverarchitektur und Sicherheit einen Root-Server mietet und nutzt geht ein erhebliches Risiko ein. Falls die Kiste geknackt wird, können Anzeigen oder hohe Rechnungen folgen. Man darf bei Root-Servern niemals vergessen: DU BIST ROOT! Wer dieser Verantwortung nicht gewachsen ist, oder nicht bereit ist sie zu tragen, MUSS zwangsläufig tiefer in die Tasche greifen und auf einen Managed-Server zurückgreifen. Dort kümmert sich ein ausgebildeter Serveradmin um alle möglichen Sicherheitsbelange und der Hoster trägt im Zweifel die Verantwortung und haftet dementsprechend auch.
b) Ohne Wissen über die verwendeten Sprachen, wird es extrem schwierig Bugs zu finden und zu beheben. Ich habe darauf Wert gelegt, den Code so sauber wie möglich zu schreiben, aber Teile der request.php, die ich noch nicht überarbeitet habe, sind natürlich nicht ordentlich eingerückt.
Inhalt
- Das Basis-Skript um den Server zu starten und zu betreiben
- Engine um von externen Seiten auf Userdaten zuzugreifen (Cookiebased)
- ACP aus meiner Feder mit unzähligen Möglichkeiten
- Supportformular, Externer Shop für Angebote
- AJAX-Chat und -Useranzeige
- CTracker-Antiworm/Injection System, diverse Sicherheitsmaßnahmen
- 1-Click Datenbank-Backupper (mit Restorefunktion)
- Paypal-API (Praxistest fehlt noch :o )
- unzählige Fixes und feineres Balance zwischen den Klassen
Installation
Ich gehe davon aus, dass ihr den oberen Text aufmerksam gelesen habt und über einen FTP und SQL-Account verfügt. Ich werde also nicht beim Urschleim beginnen.
1. Archiv auf den Server laden
2. Archiv entpacken
3. Daten in den Files anpassen.
3.1 - 3.8
3.1
öffne die Datei
client_cfg.php
PHP Code:
1 de
2 http://img.playa-games.com/res/sfgame/
3 http://img.playa-games.com/res/sfgame/
7 domain.com
8 http://domain.com/
9 0
10 http://www.elitepvpers.com
11 http://domain.com/support.php
12 http://www.gamepsf.de/
13 http://domain.com/rules.html
14 http://domain.com/shop.php
17 3
18 domain
21 3
23 1
25 http://domain.com/req.php?req=%1&random=%2
29 support@domain.com
30 http://domain.com/papaya44.swf
31 http://domain.com/papaya_cfg.php
32 1
34 2
35 http://domain.com/spenden.php
36 gamestaff@domain.com
42 1
43 1337
48 http://domain.com/res/sfgame_low/
46 de/ar/cs/da/en/es/fr/el/hu/it/ja/nl/pl/pt/pt-br/ru/sv/tr
47 german/arabic/czech/danish/english/spanish/french/greek/hungarian/italian/japanese/dutch/polish/portuguese/brazilian portuguese/russian/swedish/turkish
26 166;;http://domain.com/cid/cid.php?cid=%cid%&action=166&playerid=%playerid%&mushbought=%mushbought%&bid=<bid>&token=<token>&serverid=3&gameid=1
26 1;;http://domain.com/cid/cid.php?cid=%cid%&action=1&playerid=%playerid%&mushbought=%mushbought%&bid=<bid>&token=<token>&serverid=3&gameid=1
//26 188;;http://domain.com/cid/cid.php?cid=%cid%&action=188&playerid=%playerid%&mushbought=%mushbought%&bid=<bid>&token=<token>&serverid=3&gameid=1
domain.com ist durch deine Domain zu ersetzen.
3.2
öffne die Datei
dtoverride.php
PHP Code:
<?php
// Timezone
date_default_timezone_set('Europe/Berlin');
function dbc()
{
mysql_connect("localhost", "USER", "PASSWORD") or die(mysql_error());
mysql_select_db("DATABASE") or die(mysql_error());
}
Got it!?
3.3
öffne die Datei
index.php
Code:
http://psfgame.com/
muss ersetzt werden. (2-3 mal oder so)
3.4
öffne die Datei
req.php (line 4411)
PHP Code:
try{
$db = new PDO ( 'mysql:host=localhost;dbname=DATABSE;charset=utf8', 'USER', 'PASSWORD');
}catch(Exception $e){
exit();
}
3.5
öffne die Datei
adminui/mysql_overview.php (line 90)
PHP Code:
$res = @mysql_query('SHOW TABLE STATUS FROM `psfgame_de`') or Die(mysql_error());
3.6
öffne die Datei
adminui/dbbacker.php
ROOTDATEN oder Daten mit VOLLEM ZUGRIFF ANGEBEN!
Der (hoffentlich) eingeschränkte Standardzugriff reicht NICHT aus!
PHP Code:
////////////////////////////////////////////
// Zugangsdaten zur Datenbank //
// ACHTUNG -- ROOT-Daten verwenden //
////////////////////////////////////////////
$db_host = "localhost";
$db_user = "USER"; // hier den Benutzernamen rein
$db_passwort = "PASSWORD"; // hier das Passwort rein
$db_mysql = "DATABASE"; // hier den Namen der Datenbank rein
$backupdir = "dbbu"; // hier den Namen des Backupverzeichnisses rein
$prefix = "pre_"; // hier könnt Ihr einen Namen eintragen, welcher den Backups vorangestellt wird
3.7
öffne die Datei
adminui/backend/config.php
PHP Code:
<?php
// Power-Switch
$GLOBALS["SITE_ONLINE"] = TRUE;
// Name im Browser
$GLOBALS["SITE"] = "SF TCP";
// System-ID
$GLOBALS["SYSTEM_ID"] = "1";
// Cookie-Stuff
$GLOBALS["C_STRING"] = "fsfsdfadgehegcd";
$GLOBALS["C_UIDSALT"] = "A71379A"; // <-- Sieben zufällige Zeichen
?>
3.8
öffne die Datei
adminui/backend/secrets.php
PHP Code:
<?php
$mysql_host = "localhost";
$mysql_user = "USER";
$mysql_pass = "PASSWORD";
$mysql_db = "DATABASE";
?>
4.
Lade den sfgame-Ordner per FTP in res-Ordner (NICHT ENTHALTEN im RLS) (by Crasim:
[Only registered and activated users can see links. Click Here To Register...])
[Only registered and activated users can see links. Click Here To Register...]
5.
CHMOD für
dbbu setzen (777)
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
6. Datenbank einfügen.
7. Account registrieren
8. Account auf "Admin" schalten
Code:
UPDATE `user_data` SET `usysclass` = '5',
`donor` = 'yes' WHERE `user_id` =2;
Downloadlink
Down: [Only registered and activated users can see links. Click Here To Register...] [Only registered and activated users can see links. Click Here To Register...]
Mirror: [Only registered and activated users can see links. Click Here To Register...] [Only registered and activated users can see links. Click Here To Register...]
Mirror 2: [Only registered and activated users can see links. Click Here To Register...]
Ressourcen: [Only registered and activated users can see links. Click Here To Register...]
So, ich denke das war's.. Viel Freude mit dem Paket und ein THX wäre lieb. :)
Bilder