Trac и fcgi Apache на CentOS 6 - ошибка

Я рвал на себе волосы из-за этого, так что, надеюсь, кто-то может пролить свет на это. Я пытался установить Trac 1.0 на сервер CentOS 6.3, используя Apache и mod_fcgid.

Когда я указываю браузеру на виртуальный хост, на котором должен работать Trac, я получаю внутреннюю ошибку сервера (500) и такую ​​запись в журнале:

(104) Сброс соединения узлом: mod_fcgid: ошибка чтения данных с сервера FastCGI Преждевременный конец заголовков скрипта: trac.fcgi

Я создал среду trac в /var/trac/projectname

Затем я использовал trac-admin deploy для развертывания cgi-bin и htdocs для проекта в моем корневом каталоге для виртуального хоста. В vhost.conf я добавил следующее:

ScriptAlias / /home/httpd/vhosts/xxxx/sites/xxxx/cgi-bin/trac.fcgi/
DefaultInitEnv TRAC_ENV /var/trac/
ErrorLog "/var/log/httpd/xxxxx/error_log"
CustomLog "/var/log/httpd/xxxxx/access_log" common
LogLevel debug

<Directory "/home/httpd/vhosts/xxxxx/sites/xxxxx/htdocs">
  Order allow,deny
  Allow from all
</Directory>

<Directory "/home/httpd/vhosts/xxxxx/sites/xxxxx/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
</Directory>

Примечание. Я поставил xxxx, чтобы анонимизировать некоторую информацию о доменном имени.

Любые идеи относительно того, что может пойти не так здесь? Или как я мог бы отладить это, чтобы получить более полезную информацию журнала? Я уже установил журнал для отладки в trac.ini, но он ничего не регистрирует.


person Ruben    schedule 26.10.2012    source источник
comment
Подпись? Я не знаю, что вы имеете в виду.   -  person Ruben    schedule 26.10.2012
comment
stackoverflow.com/faq#signatures   -  person user427969    schedule 26.10.2012


Ответы (2)


Дополнительная документация в авторитетной вики на trac.edgewall.org не дает прямых указаний, где ваша конфигурация может быть неправильной.

Но ваша ошибка: 104 в любом случае предполагает проблему с самим исполняемым файлом fcgi. Возможно, вы даже захотите попробовать подход с путем к среде Trac, встроенной в сам скрипт trac.fcgi, как это рекомендовано в примере, указанном на вышеупомянутой вики-странице.

person hasienda    schedule 27.10.2012
comment
Спасибо за предложение. Я пробовал это, но, к сожалению, это не решило проблему. При этом я нашел кое-что еще, что будет объяснено в ответе. - person Ruben; 27.10.2012

Поэтому, обнаружив, что добавление пути среды к самому исполняемому файлу trac.fcgi, я проверил маску прав trac.fcgi. Я заметил, что у него нет прав на исполняемый файл, поэтому я дал исполняемые права владельцу (744). После этого он работает, будь он очень медленным, и я не вижу логотипа trac в верхнем левом углу. Вероятно, это как-то связано с псевдонимами ресурсов в конфигурации vhost, так что я сейчас займусь этим.

Что я нахожу неудобным и что заставляет меня сомневаться в том, что файл должен быть исполняемым, так это то, что об этом нет упоминания в официальной вики по установке.

Изменить: строки псевдонимов для статических ресурсов в моем vhost.conf перемещены выше строки ScriptAlias. После этого статические ресурсы загружаются успешно, и Trac работает намного быстрее. Похоже, теперь все работает. Потрясающий. :)

person Ruben    schedule 27.10.2012
comment
Здорово. Вы должны быть в состоянии принять свой собственный ответ, если он действительно разрешил ситуацию. Так найти разрешение будет проще для подписчиков. - person hasienda; 30.10.2012