Разбираем JBs по косточкам
Добавлено: 2010-10-21 13:02:11
.htaccess:
1) Любовь с UTF-8;
2) Все идем через входную точку index.php;
3) Кэшируем на клиенте css, js, png файлы.
Index.php (точка входа):
Если есть файл INSTALL идем на инсталляцию, иначе в ядро.
/core/Load.php:
1) Веселое начало
из чего следует, что любой, даже не зарегистрированный в биллинге человек может видеть информацию с phpinfo().
Попробуйте — http://{ВашАдресБиллинга}/?PHPINFO
2)
Настраиваем временную зону;
тыкаем во все заголовки ответа, что мы не что-то там, а Joonte Billing System;
вкусняшка для меня Ignore_User_Abort(TRUE);
определяем браузер пользователя;
смотрим что бы обязательно был в заголовках запроса XMLHttpRequest;
определяем разносторонние константы;
устанавливаем некоторые параметры PHP;
...
наборы функций (для дебаггинга, инклюдинга файлов, логов, настройки среды выполнения, ...);
автолоад нужных классов (чудненькая возмозможность PHP5).
Надеюсь обратили внимание, на файлы *.comp, вообщем они просто проходят в дальнейшем через eval функцию. *.mod, *.class — тоже.
P.S.:
1) Код написан в своеобразной форме (чередование заглавных и строчных букв);
2) Используется египетский стиль расстановки операторных скобок;
3) Про структуру папок в Wiki написано.
1) Любовь с UTF-8;
2) Все идем через входную точку index.php;
3) Кэшируем на клиенте css, js, png файлы.
Index.php (точка входа):
Код: Выделить всё
Include(File_Exists('INSTALL') ? './scripts/billing/install-gui.php' : './core/Load.php');
Если есть файл INSTALL идем на инсталляцию, иначе в ядро.
/core/Load.php:
1) Веселое начало
Код: Выделить всё
if(IsSet($_GET['PHPINFO'])){
PhpInfo();
Exit;
}
из чего следует, что любой, даже не зарегистрированный в биллинге человек может видеть информацию с phpinfo().
Попробуйте — http://{ВашАдресБиллинга}/?PHPINFO
2)
Настраиваем временную зону;
тыкаем во все заголовки ответа, что мы не что-то там, а Joonte Billing System;
вкусняшка для меня Ignore_User_Abort(TRUE);
определяем браузер пользователя;
смотрим что бы обязательно был в заголовках запроса XMLHttpRequest;
определяем разносторонние константы;
устанавливаем некоторые параметры PHP;
...
наборы функций (для дебаггинга, инклюдинга файлов, логов, настройки среды выполнения, ...);
автолоад нужных классов (чудненькая возмозможность PHP5).
Надеюсь обратили внимание, на файлы *.comp, вообщем они просто проходят в дальнейшем через eval функцию. *.mod, *.class — тоже.
P.S.:
1) Код написан в своеобразной форме (чередование заглавных и строчных букв);
2) Используется египетский стиль расстановки операторных скобок;
3) Про структуру папок в Wiki написано.