reklama
Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

Hádanka

Logout (4018)|9.7.2010 12:57
Nevim, jestli to vlastně patří sem, ale mam takovou jednu malou zlomyslnou hádanku.
Schválně kdo přijde na to, co by neměl správce webové aplikace dělat. :-)

Aby to nebylo tak záhadný, dám nápovědu:
[code]
/*======================================================================*\
|| #################################################################### ||
|| # vBulletin 3.6.9 - Licence Number XXXXXXXXXX
|| # ---------------------------------------------------------------- # ||
|| # Copyright ?2000-2008 Jelsoft Enterprises Ltd. All Rights Reserved. ||
|| # This file may not be redistributed in whole or significant part. # ||
|| # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # ||
|| # http://www.vbulletin.com | http://www.vbulletin.com/license.html # ||
|| #################################################################### ||
\*======================================================================*/

// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

// #################### DEFINE IMPORTANT CONSTANTS #######################
define('THIS_SCRIPT', 'search');
define('ALTSEARCH', true);

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array('search', 'inlinemod');

// get special data templates from the datastore
$specialtemplates = array(
'iconcache'
);

// pre-cache templates used by all actions
$globaltemplates = array(
'imagereg',
'search_forums',
'search_results',
'search_results_postbit', // result from search posts
'search_results_postbit_lastvisit',
'threadbit', // result from search threads
'threadbit_deleted', // result from deleted search threads
'threadbit_lastvisit',
'threadbit_announcement',
'newreply_reviewbit_ignore',
'threadadmin_imod_menu_thread',
'threadadmin_imod_menu_post',
);

// ######################### REQUIRE BACK-END ############################
require_once('./global.php');
require_once(DIR . '/includes/functions_search.php');
require_once(DIR . '/includes/functions_forumlist.php');
require_once(DIR . '/includes/functions_misc.php');

// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

if (!($permissions['forumpermissions'] & $vbulletin->bf_ugp_forumpermissions['cansearch']))
{
print_no_permission();
}

if (!$vbulletin->options['enablesearches'])
{
eval(standard_error(fetch_error('searchdisabled')));
}

// #############################################################################

$globals = array(
'query' => TYPE_STR,
'searchuser' => TYPE_STR,
'exactname' => TYPE_BOOL,
'starteronly' => TYPE_BOOL,
'forumchoice' => TYPE_ARRAY,
'childforums' => TYPE_BOOL,
'titleonly' => TYPE_BOOL,
'showposts' => TYPE_BOOL,
'searchdate' => TYPE_NOHTML,
'beforeafter' => TYPE_NOHTML,
'sortby' => TYPE_NOHTML,
'sortorder' => TYPE_NOHTML,
'replyless' => TYPE_UINT,
'replylimit' => TYPE_UINT,
'searchthreadid' => TYPE_UINT,
'saveprefs' => TYPE_BOOL,
'quicksearch' => TYPE_BOOL,
'searchtype' => TYPE_BOOL,
'exclude' => TYPE_NOHTML,
'nocache' => TYPE_BOOL,
'ajax' => TYPE_BOOL,
'imagehash' => TYPE_STR,
'imagestamp' => TYPE_STR,
'userid' => TYPE_UINT,
);

$vbulletin->input->clean_array_gpc('r', array(
'doprefs' => TYPE_NOHTML,
'searchtype' => TYPE_BOOL,
'searchid' => TYPE_UINT,
));

// #############################################################################

if (empty($_REQUEST['do']))
{
if ($vbulletin->GPC['searchid'])
{
$_REQUEST['do'] = 'showresults';
}
else
{
$_REQUEST['do'] = 'intro';
}
[/code]

PS: nehledejte chyby v kódu, koneckonců jsem sem dal jen začátek stránky, kde ani
snad žádný chyby nejsou a když tak snad ne zneužitelný. Bylo tohoho daleko víc včetně databázový struktury etc.
PPS: Samozřejmě, že to ale dělam taky :-)
crasten (180)|2.8.2010 00:49
Program podlieha licencii, preto by ho spravca nemal dalej sirit (kopirovat).
Logout (4018)|2.8.2010 01:09
No to by neměl. Ale správná odpověď to není.
-
Správná odpověď je, že by neměl ladit nastavení na provozním serveru, a to ani o půl druhé ráno :-)
Protože ukázat někomu kompletní zdrojový kódy od webový aplikace si říká o exploit... Todle je začátek (pokračování obsahující informace osvětlující stukturu databáze a mnoho dalších zajmavejch věcí, který sem sem nedal, protože nechci bejt na Kapa zlej.... a dostat BAN :-)) zdrojovejch kódu tohodle webovýho fóra, který na mě vybafly, když jsem sem jednou po půlnoci náhodou zavítal.
crasten (180)|2.8.2010 01:18
[quote=Logout;392472]No to by neměl. Ale správná odpověď to není.
-
Správná odpověď je, že by neměl ladit nastavení na provozním serveru, a to ani o půl druhé ráno :-)
Protože ukázat někomu kompletní zdrojový kódy od webový aplikace si říká o exploit... Todle je začátek (pokračování obsahující informace osvětlující stukturu databáze a mnoho dalších zajmavejch věcí, který sem sem nedal, protože nechci bejt na Kapa zlej.... a dostat BAN :-)) zdrojovejch kódu tohodle webovýho fóra, který na mě vybafly, když jsem sem jednou po půlnoci náhodou zavítal.[/quote]

No to je fakt, ladit a zostavovat akykolvek soft na ostrom serveri by spravca nemal.:mistake

Ďakujem, za poučnú hádanku.
petr.svec (320)|23.9.2010 12:49
jo pánové to asi chodíte do staré školy... a proč už většina společností veřejně dává do oběhu alfa a beta verze programů... pročpak asi, kvůli tomu, že běh aplikace stejně odladíte až za běhu

příkladek... tak trošku rozsáhlý projekt
- 1 GB v mysql
- 5 GB cache
- 500 php souborů

a jak to chcete odladit... sami... žádný test nepomůže

až to dáte na web a zjistíte, že máte třeba 20 requestů za sekundu... zjistíte třeba, že se vám hroutí (= je pomalé) sql při zápisu session

nebo že searche vám vytítí procesor serveru, že server skoro neodpovídá atd...

zatímco při vašich testech jelo všechno bomba dobře a bomba rychle

... já osobně ladím na serveru odjakživa... mám ale i druhý DEVELEP-WEB kde používám Alfa verze prováděných změn... ale v podstatě Beta verze dávám jako ostrý web... a když nic dalšího neměním lze říci, že po pár dnech můžu opravit zbylé chyby co se mezitím nalogovali :o)

stejně více než 50% práce programátora je záplatování chyb