Routes 塔架url#u表示不';t产生适当的内部静电。脚本名称未插入到解析的URL中

Routes 塔架url#u表示不';t产生适当的内部静电。脚本名称未插入到解析的URL中,routes,pylons,wsgi,Routes,Pylons,Wsgi,我使用mod_wsgi将挂架应用程序集成到apache Web服务器中。wsgi的配置如下所示: WSGIScriptAlias /mtrace /var/lib/lgmtrace/lgmtrace.wsgi 但是,在mako模板中使用h.url_不能为静态内部路由生成正确的url,如中所述。我已经检查了挂架的BaseController中的环境变量,并且SCRIPT\u NAME已正确设置为/mtrace 因此,我决定研究routes包中函数的url\u代码。事实证明,request\u c

我使用mod_wsgi将挂架应用程序集成到apache Web服务器中。wsgi的配置如下所示:

WSGIScriptAlias /mtrace /var/lib/lgmtrace/lgmtrace.wsgi
但是,在mako模板中使用h.url_不能为静态内部路由生成正确的url,如中所述。我已经检查了挂架的BaseController中的环境变量,并且SCRIPT\u NAME已正确设置为/mtrace

因此,我决定研究routes包中函数的url\u代码。事实证明,request\u config返回的config变量从未设置environ属性。因此,调用config.environ.get('SCRIPT\u NAME')的代码从未执行过

我想知道是否有人能在这件事上帮助我,因为我已经在这个问题上耽搁了很长一段时间了。有人面临同样的情况吗?如何修复它,以便正确解析URL。我在google和stackoverflow上找不到解决问题的任何结果,所以我猜一定是某种配置错误导致了这种情况。供您参考,我使用Fedora14为mod_wsgi(3.2.2)、apache服务器(2.2.17)、挂架(1.0)、路由(1.12)提供的所有默认包


谢谢。

有人建议我试试路线1.12.3,看看问题是否解决了。使用该版本无法解决此问题。见鬼,通过手动将请求['SCRIPT_NAME']预先添加到mako模板中的url来解决此问题。我想知道是否有人对此问题有正确的答案。

有人建议我尝试路线-1.12.3,看看问题是否得到解决。使用该版本无法解决此问题。见鬼,通过手动将请求['SCRIPT_NAME']预先添加到mako模板中的url来解决此问题。我想知道是否有人对这个问题有正确的答案。

pylons讨论小组的一位好心人向我指出,解决这个问题的办法是在mako模板中使用url而不是h.url。他建议的解决方案是有效的,应该用它来代替。它似乎对我很有效。请注意,
h.url(“/about”)
h.url(“about”)
之间存在差异。pylons讨论组的一位好心的同事向我指出,解决这个问题的方法是在mako模板中使用url而不是h.url。他建议的解决方案是有效的,应该用它来代替。它似乎对我很有效。请注意,
h.url(“/about”)
h.url(“about”)
之间存在差异。