it
Для домена-отправителя error.domain.ru команда будет выглядеть так:
mailq|awk ' /^[0-9A-F][0-9A-F]*.*error.domain.ru$/ {print $1}'|tr -d '*'| xargs -rn1 postsuper -d
Должно сработать в linux, с MTA postfix.
21 Апрель, 2017 - 18:24, teerex
Самый очевидный вариант - через debug_backtrace()
$trace = debug_backtrace();
$caller = $trace[1];
echo "Called by {$caller['function']}";
if (isset($caller['class'])) echo " in {$caller['class']}";
В случае если скрипт php не выполняется и ничего не выводит (WSOD, White Screen Of Death) - очевидные и правильные решения это настроить отображение/логирование ошибок в конфигах php и веб-сервера, установка отладчика (например, xdebug).
Далее код, который заменяет стандартный обработчик ошибок и просто выводит их на экран.
Брутально, но может помочь если очевидные решения по каким либо причинам не подходят и не обнаруживают ошибок.
Код надо вставлять в начало выполняемого скрипта, сразу после открывающего тега (скорее всего в index.php, init.php и подобные, если вы используете готовую CMS)
// ----------------------------------------------------------------------------------------------------
// - Display Errors
// ----------------------------------------------------------------------------------------------------
ini_set('display_errors', 'On');
ini_set('html_errors', 0);
// ----------------------------------------------------------------------------------------------------
// - Error Reporting
// ----------------------------------------------------------------------------------------------------
error_reporting(-1);
// ----------------------------------------------------------------------------------------------------
// - Shutdown Handler
// ----------------------------------------------------------------------------------------------------
function ShutdownHandler()
{
if (@is_array($error = @error_get_last()))
{
return (@call_user_func_array('ErrorHandler', $error));
};
return (TRUE);
};
register_shutdown_function('ShutdownHandler');
// ----------------------------------------------------------------------------------------------------
// - Error Handler
// ----------------------------------------------------------------------------------------------------
function ErrorHandler($type, $message, $file, $line)
{
$_ERRORS = Array(
0x0001 => 'E_ERROR',
0x0002 => 'E_WARNING',
0x0004 => 'E_PARSE',
0x0008 => 'E_NOTICE',
0x0010 => 'E_CORE_ERROR',
0x0020 => 'E_CORE_WARNING',
0x0040 => 'E_COMPILE_ERROR',
0x0080 => 'E_COMPILE_WARNING',
0x0100 => 'E_USER_ERROR',
0x0200 => 'E_USER_WARNING',
0x0400 => 'E_USER_NOTICE',
0x0800 => 'E_STRICT',
0x1000 => 'E_RECOVERABLE_ERROR',
0x2000 => 'E_DEPRECATED',
0x4000 => 'E_USER_DEPRECATED'
);
if (!@is_string($name = @array_search($type, @array_flip($_ERRORS))))
{
$name = 'E_UNKNOWN';
};
return (print (@sprintf("%s Error in file \xBB%s\xAB at line %d: %s\n", $name, @basename($file) , $line, $message)));
};
$old_error_handler = set_error_handler("ErrorHandler");
4 Декабрь, 2013 - 08:47, teerex
<div id="lazyblock">
<script>
function lazyblock(){
var wt = $(window).scrollTop(); //* top of the window
var wb = wt + $(window).height(); //* bottom of the window
$("#lazyblock").each(function(){
var ot = $(this).offset().top; //* top of object (div)
var ob = ot + $(this).height(); //* bottom of object
if(!$(this).attr("loaded") && wt<=ob && wb >= ot){
$(this).html('<iframe src="/block.html" scrolling="no" frameborder="0"
style="border:none; overflow:hidden; width:211px; height:790px;" allowTransparency="true">
</iframe>');
$(this).attr("loaded",true);
}
});
}
$(document).ready(function(){
$(window).scroll(lazyblock);
lazyblock();
});
</script>
</div>
25 Август, 2013 - 20:07, teerex
Просто удалить файлы в папке с кэшем:
find /var/cache/nginx/proxy/ -type f -delete
Инфо о материнской плате:
wmic baseboard get Manufacturer && wmic baseboard get product
Память:
wmic MEMORYCHIP get BankLabel, Capacity, DeviceLocator, FormFactor, Speed, Manufacturer
Расшифровка кодов для памяти: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394347(v=vs.85).aspx
Работает через wmic, начиная с XP (без установки Everest, Sandra и т.п.)
12 Сентябрь, 2012 - 21:14, teerex
Поздравляю всех программистов с днём программиста.
В подарок - "открытка"
Для запуска нужен Chrome или FireFox актуальной версии с включенным javascript, либо выполнение Java-апплетов в браузере.
25 Апрель, 2012 - 13:06, teerex
По-умолчанию у suexec DOC_ROOT в CentOS (и других дистрибутивах) установлен /var/www, что не позволяет apache запускать скрипты с других мест (например, /home).
Единственный нормальный вариант сделать это в linux - перекомпилировать suexec с новыми настройками.
Команды приведены для Centos 6.0. В принципе инструкция подойдёт для других версий linux, с небольшими поправками.
9 Февраль, 2012 - 20:29, teerex
По-русски:
Такая ошибка может быть если nginx работает как прокси (например, к apache), и от бэкенда пришел ответ со слишком большим заголовком.
31 Октябрь, 2011 - 01:39, teerex
В ночь с 30 на 31 октября 2011 года перевод времени производить не нужно!
Перевод времени на зимнее/летнее время в России и Белоруссии отменили.
При этом, если на компьютере обновления/настройки зоны не от 2011 года, то скорее всего будет автоматический перевод на -1 час (зимнее время).
Особенно важно это для серверов и сисадминов, соответственно :)
Далее подробности настроек:
|
Комментарии