Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Perl mason CGI вывод ошибок, Perl mason или CGI как спрятать ошибки. 
:(
    Опции темы
mastercz
Дата 5.3.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 5.11.2008

Репутация: нет
Всего: нет



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

В mason'е указан парамерт  error_mode и его значения output" или "fatal" , однако я так и не нашел куда их корректно прописывать (желательно, в конфиг апача).  Добавил в конфиг следующую строчку :PerlAddVar MasonErrorMode "fatal", одако в случае синтаксической ошибки выдает ошибку 500 взамен заявленной 501, может быть этот парамерт нужно использовать иначе ?

И второе.  при выдаче ошибки базой данных (в данном случае о запрете обращения), браузер показывает следующее

CGI=HASH(0xad56dbc) 
7 
ERROR: доступ запрещён для связи ...

Чем этот вывод регулируеться и как его можно убрать.
Заранее спасибо за ответ.

PM MAIL   Вверх
NuINu
Дата 5.3.2009, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 19.7.2008

Репутация: 5
Всего: 6



переопределите STDOUT при загрузке скрипта
PM MAIL   Вверх
sir_nuf_nuf
Дата 5.3.2009, 23:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 6.1.2008

Репутация: 14
Всего: 31



NuINu, STDERR а не STDOUT.
Но это хак. В таких случаях нужно читать документацию и искать какой опцией это отключается


--------------------
user posted image
user posted image
PM MAIL Jabber   Вверх
mastercz
Дата 11.3.2009, 03:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 5.11.2008

Репутация: нет
Всего: нет



Ничего не понимаю ...
Сообщение высвечиваеться в случае ошибки при выполнинии функций DBI.
При создании класса: RaiseError =>1, PrintError=>1 
В случае когда RaiseError =>0 сообщение не появляется, однако если я принудительно остановлю работу скрипта после выполнения запроса, то сообщение всеже выводиться в браузер. Любопытно, что PrintError никак не видоизменяет сообщение в зависимости от состояния [0, 1]. В $sth->err значение 7; в
$sth->errstr значение "ERROR: доступ запрещён для связи strs".
подскажите пожалуйста, где копать. Как заставить скрипт не выводить сообщение.
Заранее спасибо за ответ.
PM MAIL   Вверх
mastercz
Дата 11.3.2009, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 5.11.2008

Репутация: нет
Всего: нет



Все. Разобрался. Времени жалко...эх. Скрипт изначально не мой и в конце скрипта была обработка ошибок, которую я проглядел.
Спасибо всем, кто поучавтсвовал. Сори за беспокойство.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0454 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.