Добрый день.
Помогите пожалуйста разобраться -
стоит FreeBSD 6.2, dspam 3.6, apache22
Настроил dspam, теперь хочу настоить его веб интерфейс для просмотра отчетов о спаме.
dspam по умолчанию запускается от рута.
На сайте в dspam лежит инфо по настроку с виртуал хостом и авторизацией - но я хочу пока просто настоить, без авторизации.
путь к папку с dspam - /usr/local/www/apache22/data/dspamв апач прописал
<Directory "/usr/local/www/apache22/data/dspam/">
SetHandler cgi-script
Options FollowSymLinks ExecCGI
AddHandler cgi-script .cgi .pl
DirectoryIndex dspam.cgi
AllowOverride none
Order allow,deny
Allow from all
</Directory>после чего запускаю страничку из эксплорера
http://ip/dspam/страничка открывается, но на ней ошибка
An Error Has Occured
The following error occured while trying to process your request:
System Error. I was unable to determine your identity.
If this problem persists, please contact your administrator.а в логах апача
[Mon Jan 07 11:40:16 2008] [error] [client 77.244.209.198] File does not exist: /usr/local/www/apache22/data/base.css, referer: http://ip/dspam/dspam.cgi
[Mon Jan 07 11:40:16 2008] [error] [client 77.244.209.198] File does not exist: /usr/local/www/apache22/data/dspam-logo-small.gif, referer: http://ip/dspam/dspam.cgi
подскажите плиз - куда копать, а то совсем запутался (((
да - совсем забыл - сделал симлинк в папку /usr/local/www/apache22/data
lrwxr-xr-x 1 root wheel 27B Jan 6 23:35 dspam -> /usr/local/www/vhosts/dspam
На будущее - тему желательно ставить связанную с вопросом, а то многие просто пройдут мимо.
>[оверквотинг удален]
>The following error occured while trying to process your request:
>System Error. I was unable to determine your identity.
>If this problem persists, please contact your administrator.
>
>а в логах апача
>[Mon Jan 07 11:40:16 2008] [error] [client 77.244.209.198] File does not exist:
>/usr/local/www/apache22/data/base.css, referer: http://ip/dspam/dspam.cgi
>[Mon Jan 07 11:40:16 2008] [error] [client 77.244.209.198] File does not exist:
>/usr/local/www/apache22/data/dspam-logo-small.gif, referer: http://ip/dspam/dspam.cgi
>тут же англицким языком сказано:
в папке /usr/local/www/apache22/data/ необходимых файлов нет!
Соотвественно, либо не весь конфиг, либо он не так выглядит.
Да и еще, здесь похоже не весь error-лог. Добавьте так же access-лог
>тут же англицким языком сказано:
>в папке /usr/local/www/apache22/data/ необходимых файлов нет!
>Соотвественно, либо не весь конфиг, либо он не так выглядит.
>
>все эти файлы находятся в
/usr/local/www/apache22/data/dspam - и по идее должны оттуда браться
сделал с виртуал хостом
-<VirtualHost *:80>
ServerAdmin dspam@yourdomain.com
DocumentRoot /usr/local/www/vhosts/dspam
ServerName dspam.yourdomain.com
ErrorDocument 401 /401.html#SuexecUserGroup www www
<Directory "/usr/local/www/vhosts/dspam">
SetHandler cgi-scriptOptions FollowSymLinks ExecCGI
AddHandler cgi-script .cgi .pl
DirectoryIndex dspam.cgi
AllowOverride none
Order allow,deny
Allow from all
</Directory>ErrorLog /var/log/dspam-error_log
CustomLog /var/log/dspam-access_log common
</VirtualHost>Апач настроил с с suexec ,
на сайте рекоменуют запускать с SuexecUserGroup dspam dspam
но в FreeBSD dspam ставиться с правами рута, так что непонятно от какого пользователся ставить, а в логах теперь[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] Premature end of script headers: base.css, referer: http://ip/dspam.cgi
[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] (8)Exec format error: exec of '/usr/local/www/vhosts/dspam/dspam-logo-small.gif' failed, referer:
http://83.136.240.218/dspam.cgi
[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] Premature end of script headers: dspam-logo-small.gif, referer: http://ip/dspam.cgi
[Mon Jan 07 13:15:45 2008] [error] [client 77.244.209.198] (8)Exec format error: exec of '/usr/local/www/vhosts/dspam/base.css' failed, referer: http://83.13
6.240.218/dspam.cgiПро тему сообщения действительно забыл (((
ователся ставить, а в логах теперь
>[оверквотинг удален]
>[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] (8)Exec format error: exec
>of '/usr/local/www/vhosts/dspam/dspam-logo-small.gif' failed, referer:
>http://83.136.240.218/dspam.cgi
>[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] Premature end of script
>headers: dspam-logo-small.gif, referer: http://ip/dspam.cgi
>[Mon Jan 07 13:15:45 2008] [error] [client 77.244.209.198] (8)Exec format error: exec
>of '/usr/local/www/vhosts/dspam/base.css' failed, referer: http://83.13
>6.240.218/dspam.cgi
>
>Про тему сообщения действительно забыл (((Premature end of script
Значит что апачи не может исполнить скрипт. Скорее всего, проблема с правами доступа.
Выставите так, чтобы от пользователя от которого запускается cgi мог исполняться dpam.cgi.
Ну или выставите для проверки все rx на dspam.cgi.
>ователся ставить, а в логах теперь
>>[оверквотинг удален]
>>[Mon Jan 07 13:06:50 2008] [error] [client 77.244.209.198] (8)Exec format error: exece.css' failed, referer: http://83.13
>[оверквотинг удален]
>>
>>Про тему сообщения действительно забыл (((
>
>Premature end of script
>
>Значит что апачи не может исполнить скрипт. Скорее всего, проблема с правами
> доступа.
>Выставите так, чтобы от пользователя от которого запускается cgi мог исполняться dpam.cgi.
>
>Ну или выставите для проверки все rx на dspam.cgi.права стоят 555
-r-xr-xr-x 1 root wheel 22K Jan 7 12:12 admin.cgi*
-r-xr-xr-x 1 root wheel 3.3K Jan 7 12:12 admingraph.cgi*
-r-xr-xr-x 1 root wheel 5B Jan 6 23:39 admins*
-r-xr-xr-x 1 root wheel 5B Jan 7 12:12 admins.sample*
-r-xr-xr-x 1 root wheel 2.7K Jan 7 12:12 base.css*
-r-xr-xr-x 1 root wheel 2.7K Jan 7 13:49 configure.pl*
-r-xr-xr-x 1 root wheel 2.6K Jan 7 12:12 configure.pl.sample*
-r-xr-xr-x 1 root wheel 1.4K Jan 6 21:23 default.prefs*
-r-xr-xr-x 1 root wheel 1.4K Jan 7 12:12 default.prefs.sample*
-r-xr-xr-x 1 root wheel 4.7K Jan 7 12:12 dspam-logo-small.gif*
-r-xr-xr-x 1 root wheel 42K Jan 7 12:12 dspam.cgi*
-r-xr-xr-x 1 root wheel 2.8K Jan 7 12:12 graph.cgi*
-r-xr-xr-x 1 root wheel 17K Jan 7 12:12 rgb.txt*
-r-xr-xr-x 1 root wheel 328K Jan 7 11:38 tail.core*
dr-xr-xr-x 2 root wheel 512B Jan 7 12:12 templates/по идее все должно запускаться ((
Какие-нибудь идеи что ещё посмотреть ?
Отключите Suexec и проверте.Можно сейчас (c suexec) проверить создайте test.pl и проверте запустится или нет. Если нет, значит с Suexec проблема.
#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
print "Hello, world!\n"
>Отключите Suexec и проверте.
>
>Можно сейчас (c suexec) проверить создайте test.pl и проверте запустится или
>нет. Если нет, значит с Suexec проблема.
>
>#!/usr/local/bin/perl
>
>print "Content-type: text/html\n\n";
>print "Hello, world!\n"я скомпилил с suexec - но невключал - на сайте написано что он нужен для того чтобы запускать cgi dspama от пользователя dspam, но во фре нет пользователя dspam - он работает от пользователя root и группы mailnull (ексима).
этот скрипт отлично работает и пишит Hello, world!
((
в dspam.cgi на первый взгляд от пользователя ничего не завязано
>я скомпилил с suexec - но невключал - на сайте написано
>что он нужен для того чтобы запускать cgi dspama от пользователя
>dspam, но во фре нет пользователя dspam - он работает от
>пользователя root и группы mailnull (ексима).
>этот скрипт отлично работает и пишит Hello, world!
>((
>в dspam.cgi на первый взгляд от пользователя ничего не завязаноА данные для dspam есть?
Попробуйте послать тестовое письмо.
>>в dspam.cgi на первый взгляд от пользователя ничего не завязано
>
>А данные для dspam есть?
>Попробуйте послать тестовое письмо.Данные есть, писем куча проходит (
>
>>>в dspam.cgi на первый взгляд от пользователя ничего не завязано
>>
>>А данные для dspam есть?
>>Попробуйте послать тестовое письмо.
>
>Данные есть, писем куча проходит (dspam.cgi. покажите кусок foreach my $period 530 где строка.
>>
>>>>в dspam.cgi на первый взгляд от пользователя ничего не завязано
>>>
>>>А данные для dspam есть?
>>>Попробуйте послать тестовое письмо.
>>
>>Данные есть, писем куча проходит (
>
>dspam.cgi. покажите кусок foreach my $period 530 где строка.
>огромное спасибо -
разобрался - оказывается была проблема в параметре SetHandler cgi-script
убрал - все заработало )))осталась проблема в том что теперь там везде в отчетах пусто, и непонятно как зайти под администратором )))
>Значит что апачи не может исполнить скрипт. Скорее всего, проблема с правами
> доступа.Абсолютно не верно. Если бы не хватало прав на запуск cgi сценария то получили бы 403. В данном же случае сценарий был запущен, но завершился некорректно не успев даже выдать стандартные хедеры. Следующей строкой в логе апача мы видим ошибку которую выдал сценарий перед смертью, на ошибку с правами это тоже не очень похоже. Дальше нужно смотреть, а может и дебагить сам скрипт
>>Значит что апачи не может исполнить скрипт. Скорее всего, проблема с правами
>> доступа.
>
>Абсолютно не верно. Если бы не хватало прав на запуск cgi сценария
>то получили бы 403. В данном же случае сценарий был запущен,
>но завершился некорректно не успев даже выдать стандартные хедеры. Следующей строкой
>в логе апача мы видим ошибку которую выдал сценарий перед смертью,
>на ошибку с правами это тоже не очень похоже. Дальше нужно
>смотреть, а может и дебагить сам скриптНет. Проверьте. снимите x. сами увидите все.
Данная обишка вообще достаточно общая, то что там написано по английски я прекрасно понимаю.
>>Значит что апачи не может исполнить скрипт. Скорее всего, проблема с правами
>> доступа.
>
>Абсолютно не верно. Если бы не хватало прав на запуск cgi сценария
>то получили бы 403. В данном же случае сценарий был запущен,
>но завершился некорректно не успев даже выдать стандартные хедеры. Следующей строкой
>в логе апача мы видим ошибку которую выдал сценарий перед смертью,
>на ошибку с правами это тоже не очень похоже. Дальше нужно
>смотреть, а может и дебагить сам скрипт403 не заметил. Но в логах бы сообщение было бы такое же.