Php apache2 error log

Где PHP хранит журнал ошибок?

Я арендовал виртуальный хостинг и использую Cpanel, Apache, PHP, который работает под управлением fastcgi. Где PHP хранит журнал ошибок?

Есть ли другой способ найти журнал ошибок в среде общего хостинга вместо того, чтобы просматривать всю структуру сайта в поисках файлов error_log?

У меня есть доступ к php.ini (я использую PHP версии 5.2.16).

Ответ 1

PHP сохраняет журналы ошибок в папке /var/log/apache2, если PHP является модулем apache2. Общие хосты часто хранят файлы журналов в подпапке корневого каталога /log . Но , если у вас есть доступ к php.ini файлу, вы можете сделать это:

error_log = /var/log/php-scripts.log

Если вы используете cPanel, главный файл журнала, который вы, вероятно, ищете, хранится (по умолчанию) в:

/usr/local/apache/logs/error_log

Если ничего не помогает, вы можете проверить расположение файла журнала, используя:

Ответ 2

В Linux:

php —info | grep error

Терминал выведет местоположение журнала ошибок.

В Windows:

php —info | findstr /r /c:»error_log»

Командная строка выведет местоположение журнала ошибок.

Чтобы установить местоположение журнала:

Откройте php.ini и добавьте следующую строку:

error_log = /log/myCustomLog.log

Ответ 3

В среде LAMP ошибки php по умолчанию направляются в этот файл:

/var/log/httpd/error_log

Все журналы доступа находятся здесь:

/var/log/httpd/access_log

Ответ 4

Как найти журнал ошибок PHP в Linux:

eric@dev /var $ sudo updatedb

[sudo] password for eric:

eric@dev /var $ sudo locate error_log

/var/log/httpd/error_log

Альтернативный способ:

eric@dev /home/eric $ sudo find / -name «error_log» 2>/dev/null

/var/log/httpd/error_log

Ответ 5

Необходимо использовать абсолютный путь при установке переменной error_log в вашем файле php.ini, иначе журналы ошибок будут сохраняться в соответствии с вашим относительным путем.

error_log = /var/log/php.errors

Другое решение — написать простой скрипт, который будет перечислять все файлы журналов ошибок из дерева каталогов.

Ответ 6

  1. ищите файлы php.ini. в locate php.ini ;
  2. ищите в этих файлах error_reporting значение;
  3. проверяйте error_log значение, чтобы убедиться, что оно указывает на реальное место и не закомментировано.
Читайте также:  Json class for php

Ответ 7

Лучше всего заглянуть в файл httpd.conf и посмотреть, что установлено по умолчанию. Он также может быть отменен вашим конкретным виртуальным хостом. Я начинаю с просмотра /etc/httpd/conf/httpd.conf и ли /etc/apache2/httpd.conf и ищу error_log. Он может быть указан как /var/log/httpd/error_log или /var/log/apache2/error_log как logs/error_log .

В этом случае это будет относительный путь, который означает, что он будет указывать на /etc/httpd/logs/error_log . Если вы все еще не можете его найти, посмотрите на конечную часть файла httpd.conf и посмотрите, где включены ваши виртуальные хосты. Он может находиться в /etc/httpd/conf.d/

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

Как смотреть логи в Apache?

img

Apache – это часть стека LAMP программного обеспечения для Linux (Linux, Apache, MySQL, PHP). Apache позволяет открывать веб-страницы людям, просматривающим ваш сайт.

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

В данной статье вы узнаете, как просматривать лог-файлы журнала доступа Apache.

Просмотр журналов доступа Apache

Использование cPanel для загрузки необработанных файлов регистрации доступа

Если вы вошли на веб-сервер с помощью cPanel, то вы можете загрузить журналы доступа Apache через графический интерфейс.

  1. Найдите раздел с надписью «Metrics».

Metrics

  1. Нажмите «Raw Access». Если включено архивирование, то необработанные файлы журналов Apache можно загрузить внизу страницы. Они будут выглядеть как стандартные гиперссылки, промаркированные с учетом конструкции веб-сайта, которым вы управляете.

Raw Access

При нажатии на гиперссылку вам будет предложено сохранить или открыть файл. Эти лог-файлы сжаты при помощи gzip, поэтому, если ваша систему отлична от Linux, то вам могут понадобиться дополнительные инструменты для распаковки. Сохранить файл вы можете в любую папку.

  1. Найдите файл в своей ОС, затем щелкните на него правой кнопкой мыши и выберите extract(извлечь). После этого должен появиться новый файл без расширения .gz .
  1. Щелкните правой кнопкой мыши и выберите edit (изменить), чтобы открыть файл в любом текстовом редакторе и просмотреть его содержимое.

Использование команд терминала для отображения журналов локального доступа

Если вы работаете на компьютере, на котором установлен Apache, или если вы вошли в систему удаленно, то вы можете использовать терминал для отображения и фильтрации содержимого журналов доступа.

Читайте также:  Binary string to bytes python

По умолчанию вы можете найти лог-файл по следующим путям:

Чтобы перемещаться по вашей системе в поисках журналов, используйте графический интерфейс или терминал с командой cd .

Шаг 1: Отображение последних 100 записей журнала доступа

Введите в окно терминала следующую команду:

sudo tail -100 /var/log/apache2/access.log

Команда tail указывает на то, что необходимо прочитать последнюю часть файла, а команда -100 – что нужно отобразить 100 записей.

Последняя часть команды, /var/log/apache2/access.log , указывает, где искать лог-файл. Если ваш лог-файл имеет другое расположение, то обязательно укажите верный путь.

Шаг 2: отображение записей определенного типа из журнала доступа

Иногда может потребоваться отобразить в журнале только записи определенного типа. Вы можете воспользоваться командой grep для фильтрации отчета по ключевым словам.

Например, введите в терминал следующую команду:

sudo grep GET /var/log/apache2/access.log

Как и предыдущая команда, она обращается к файлу /var/log/apache2/access.log , чтобы отобразить содержимое журнала доступа. Команда grep указывает на то, что отобразить нужно только записи с запросом GET .

Эту команду можно заменить на любые другие команды Apache. Например, если вы хотите отследить доступ к изображениям в формате .jpg , то вы можете заменить GET на .jpg . Как и в предыдущей команде, следите за тем, чтобы был указан фактический путь к лог-файлу вашего сервера.

Просмотр журнала ошибок Apache

Помимо журнала доступа вы можете просматривать журнал ошибок, используя ранее упомянутые команды терминала.

Введите в терминал следующую команду:

sudo tail -100 /var/log/apache2/error.log

Если ваш лог-файл доступа был расположен в другой папке, то и лог-файл ошибок будет в той же папке. Проверьте, что вы верно указали путь до файла.

Как читать логи в Apache

Когда вы открываете лог-файл доступа впервые, то внутренний вид вас может потрясти.

Там находится множество информации о HTTP-запросах, а некоторые текстовые редакторы (и терминал) еще могут переносить часть текста на следующую строку, что может затруднять чтение файла. Однако, несмотря на это, каждая информация отображается в определенном порядке.

Традиционный формат отображения лог-файла доступа:

Это код для наиболее общих параметров в каждой строке лог-файла.

Каждый знак % соответствует определенному фрагменту информации в журнале:

  • %h – IP-адрес клиента (источника запроса на доступ).
  • %l – следующая запись может быть просто дефисом – это означает, что информация не была получена. Это результат проверки identd на стороне клиента.
  • %u – идентификатор пользователя клиентской стороны, если для запроса доступа требуется HTTP-аутентификация.
  • %t – временная метка входящего запроса.
  • %r – использованная строка запроса. Здесь речь идет о методе http (GET, POST, HEAD и т.д.), пути к тому, что было запрошено, и используемом протоколе http.
  • %>s – код состояния, возвращенный сервером клиенту.
  • %b – размер запрошенного ресурса.
  • «%i» — указывает на то, как был получен доступ, путем перехода по ссылке на другом веб-сайте или другими способами, с помощью которых клиент был направлен на вашу страницу.
  • «%i» — сообщает вам информацию об объекте, совершающем запрос, например, о веб-браузере, операционной системе, источнике веб-сайта (если это робот) и т.д.
Читайте также:  Функция нахождения нод питон

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

Дополнительную информацию о форматах журналов декодирования можно найти тут

Как использовать данные в лог-файлах Apache

Анализ журнала Apache дает возможность наблюдать за способами взаимодействия клиентов с вашим сайтом.

Например, вы можете посмотреть временную метку, чтобы выяснить, сколько поступает запросов на доступ в час, чтобы определить шаблоны трафика. Вы можете посмотреть на user-agent, чтобы узнать, входят ли определенные пользователи на веб-сайт с целью доступа к базе данных или создания контента. Вы также можете отлеживать неудачные попытки аутентификации, чтобы выявлять различные виды кибератак на вашу систему.

Журнал ошибок Apache можно использовать аналогичным образом. Часто его просто используют для того, что посмотреть сколько генерируется ошибок 404. Ошибка 404 возникает, когда клиент запрашивает отсутствующий ресурс, и это может помочь вам распознать неработающие ссылки или другие ошибки на странице. Помимо этого, его также можно использовать для поиска ошибок конфигурации или даже предупреждений о потенциальных проблемах с сервером.

Заключение

В данной статье были представлены методы извлечения данных для просмотра лог-файлов доступа Apache.

Файл access.log – отличный вариант для того, чтобы проанализировать то, как клиенты взаимодействуют с вашим сервером. А файл error.log может помочь вам устранить проблемы с вашим веб-сайтом.

Источник

Оцените статью