python5.jpg
PyCon [5] 2009 - Caxias do Sul

Ae, faz horas que não escrevo no meu blog, e já andava com saudade dele. A minha auxência é facilmente explicada pois atualmente meus dias não são mais contados em horas, mas sim pelo número de coisas que tenho que fazer por dia. Atualmente, estou me empenhando para concluir a tradução da documentação do Django 1.0 para Português do Brasil, fora a faculdade, que eu achei q seria barbada no início, mas esta exigindo muito trabalho fora de sala de aula. Junto tudo isso estou com 4 projetos em fase de acabamentos e detalhes, tudo contribuindo para aumentar a falta de tempo para escrever, e por em andamento várias idéias que tenho anotadas.

Ae!!

Faz tempo que não escrevo, hehehe. É o volume de trabalho que não baixa e não me deixa escrever Cry.

Depois de muita luta, finalmente consegui fazer o Trac funcionar com o Lighttpd e Fastcgi, não foi uma coisa muito fácil, devido alguns probleminhas com os dados fornecidos pelo grupo desenvolvedor do Trac e a documentação do Lighttpd, mas nada muito extraordinário.

 

Para fazer rodar direitinho o Trac no seu servidor Lighttpd você deve utilizar um script fcgi, nas versões mais antigas do Trac ele ficava na pasta /usr/share/trac/cgi-bin/trac.fcgi. Mas na versão que eu estou usando 0.11rc1 me parece que ele não veio, por isso eu vou colocá-lo aqui caso você esteja procurando uma maneira de usá-lo em modo fcgi.

Arquivo: trac.fcgi

#!/usr/bin/python
try:
import os
if 'TRAC_ENV' not in os.environ and 'TRAC_ENV_PARENT_DIR' not in os.environ:
os.environ['TRAC_ENV'] = '/path/to/your/project'
from trac.web import fcgi_frontend
fcgi_frontend.run()
except Exception, e:
print "Content-type:text/plain\n\r\n\r"
print 'Oops!'
print
print 'Trac detected a internal error:'
print e
print
import traceback
import StringIO
tb = StringIO.StringIO()
traceback.print_exc(file=tb)
print tb.getValue()

O arquivo trac.fcgi pode ser colocado em qualquer lugar do servidor, de qualquer forma você terá quer indicar onde ele está no arquivo de configuração do Lighttpd.

Arquivo lighttpd.conf

server.modules  = ( "mod_rewrite", "mod_alias", "mod_access", 
"mod_status", "mod_fastcgi", "mod_accesslog" )
server.document-root        = "/your/htdocs/path"
## where to send error-messages to
server.errorlog             = "/path/to/lighttpd/error.log"
accesslog.filename          = "/path/to/lighttpd/access.log"
url.access-deny             = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
fastcgi.server = ("/trac" =>
("trac" =>
("socket" => "/tmp/trac-fastcgi.sock",
"bin-path" => "/path/to/your/trac.fcgi",
"check-local" => "disable",
)
)
)

O sistema operacional que estou usando é o Solaris 10 x86, estou usando o site www.sunfreeware.com para baixar os pacotes para instalar no solaris. Eu precisei instalar o Python 2.5, Openssl, Sqlite, Easy tools e as devidas dependências. Com exceção do Easy tools, que é um recurso do Python para instalar Eggs, eu pude instalar utilizando o Sunfreeware. O site é meio tosco mas os pacotes são bem atuais e confiáveis, é só baixar e rodar:

$ gunzip nome_do_pacote.gz
$ pkgadd -d nome_do_pacote

Acho que era isso, espero ter ajudado, ou pelo menos ter dado uma luz para alguém, e segue screeshots do Amadis Trac.
Página inicial

Amadis Trac
Visualização dos Milestones
Amadis Trac

Falow!!

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <b> <i> <u> <img> <p> <span> <div> <h1> <h1> <h2> <h3> <h4> <h5> <h6> <pre>
  • Lines and paragraphs break automatically.

More information about formatting options

Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated.