我正在尝试配置两个Trac实例,以便通过浏览器访问它们,每个实例都有一个不同的URL:
http://trac.domain.com/trac1
http://trac.domain.com/trac2
我第一次访问它们Apache响应没问题,我用/ trac1获取第一个Trac,然后在/ trac2中获得第二个Trac。但是当我再次访问/ trac1时,它会不断向我提供第二个Trac(/ trac2)的内容。如果我触摸.wsgi配置文件中的第一个(比如说trac1.wsgi),然后再次请求/ trac1与浏览器,我再次得到预期的内容。
相反的情况相同:access / trac2,然后是/ trac1,然后/ trac2继续给出/ trac1的内容,直到我触摸trac2.wsgi ......
所以似乎Python,mod_wsgi和/或Apache都是缓存结果或其他东西。我不是系统管理员,无法在这个问题上取得进一步的进展。
.wsgi文件和Apache的http.conf:
trac1.wsgi :
import os
os.environ['TRAC_ENV'] = '/home/myuser/trac/trac1'
os.environ['PYTHON_EGG_CACHE'] = '/tmp/'
import trac.web.main
application = trac.web.main.dispatch_request
trac2.wsgi :
import os
os.environ['TRAC_ENV'] = '/home/myuser/trac/trac2'
os.environ['PYTHON_EGG_CACHE'] = '/tmp/'
import trac.web.main
application = trac.web.main.dispatch_request
的http.conf :
<VirtualHost trac.domain.com:8080>
WSGIScriptAlias /trac1 /home/myuser/public_html/trac1/apache/trac1.wsgi
WSGIScriptAlias /trac2 /home/myuser/public_html/trac2/apache/trac2.wsgi
<Directory /home/myuser/public_html/trac1/apache>
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
<Location "/trac1">
AuthType Basic
AuthName "Trac1 Trac Auth"
AuthUserFile /home/myuser/public_html/trac1/apache/trac1.htpasswd
Require valid-user
</Location>
<Directory /home/myuser/public_html/trac2/apache>
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
<Location "/trac2">
AuthType Basic
AuthName "Trac2 Trac Auth"
AuthUserFile /home/myuser/public_html/trac2/apache/trac2.htpasswd
Require valid-user
</Location>
</VirtualHost>
如果有人建议替代配置或其他任何配置,也欢迎。谢谢!
赫
答案 0 :(得分:2)
我自己找到了解决方案,它是在Trac文档(“重要说明”部分)中,我没有看过事,傻瓜我:P
答案 1 :(得分:0)
将鸡蛋缓存移至单独的目录
trac1.wsgi:
import os
os.environ['TRAC_ENV'] = '/home/myuser/trac/trac1'
os.environ['PYTHON_EGG_CACHE'] = '/tmp/trac1'
import trac.web.main
application = trac.web.main.dispatch_request
trac2.wsgi:
import os
os.environ['TRAC_ENV'] = '/home/myuser/trac/trac2'
os.environ['PYTHON_EGG_CACHE'] = '/tmp/trac2'
import trac.web.main
application = trac.web.main.dispatch_request