默认情况下,当pserve启动时,它会在http://0.0.0.0:6543中运行金字塔应用程序但是如何将其更改为http://0.0.0.0:6543 / myapp
在设置中我可以更改端口,但我没有在其他地方找到更改根路径的位置
答案 0 :(得分:0)
在任何WSGI应用程序中,environ['SCRIPT_NAME']
在这里非常重要。它定义了应用程序中所有URL的根路径。完整路径为environ['SCRIPT_NAME'] + environ['PATH_INFO']
。假设您已在应用中正确完成了操作(例如request.route_url(..)
将使用此信息生成网址),那么您只需通过指示将其应用程序重新安装到其他地方(默认SCRIPT_NAME
为''
)它应该是别的东西。
根据您部署应用程序的方式,您可以执行以下几项操作(如果它在代理后面,那么事情会稍微复杂一些)。让我们假设你只是使用一个托管女服务员的简单金字塔应用程序。您可以使用与rutter
路径匹配的/myapp/*
[1]包移动您的应用,并使用相应的SCRIPT_NAME
(myapp
)和{将所有请求发送到您的应用{1}}。
声明性配置对于金字塔应用来说是最简单的。只需安装PATH_INFO
,然后更新您的INI文件,即可在rutter
前缀安装您的应用程序:
/myapp
注意我将[app:foo]
use = egg:myapp#main
[composite:main]
use = egg:rutter#urlmap
/myapp = foo
重命名为app:main
,因为您只能有一个名为app:foo
的wsgi组件,我们希望它是复合组件。
[1] http://rutter.readthedocs.io/en/latest/#declarative-configuration-using-paste-deploy-ini-files