【发布时间】:2017-08-16 18:53:03
【问题描述】:
我正在尝试在 AppEngine 之外使用 WebApp2,但在文档中的任何地方都找不到如何设置文件的静态路由。
例如,我有以下文件夹结构
演示文稿
-->js
-->-->main.js
-->templates
-->-->index.html (loaded via Jinja)
我如何引用 main.js,因为使用 ../js/main.js 给了我 404
【问题讨论】:
我正在尝试在 AppEngine 之外使用 WebApp2,但在文档中的任何地方都找不到如何设置文件的静态路由。
例如,我有以下文件夹结构
演示文稿
-->js
-->-->main.js
-->templates
-->-->index.html (loaded via Jinja)
我如何引用 main.js,因为使用 ../js/main.js 给了我 404
【问题讨论】:
这是处理此问题的文档:Quick start (to use webapp2 outside of App Engine)。这没有用吗?
【讨论】:
服务静态文件should occur outside of your WSGI application(webapp2 app),所以它取决于你使用什么服务器来运行你的 webapp2 应用程序(这是一个 WSGI 应用程序),因为该服务器需要配置为服务于静态文件。您能否在问题中添加您使用的服务器类型和/或您如何运行 webapp2 应用程序?
【讨论】:
感谢您的回复,经过大量挖掘后发现类似。问题是我对 WebApp2 作为正常点的 AppEngine Dev App Server 的确切含义缺乏了解。
我只需要一个简单的HTTP服务器,所以做如下
static_app = StaticURLParser("Presentation/")
# Create a cascade that looks for static files first, then tries the webapp
app = Cascade([static_app, web_app])
def main():
httpserver.serve(app, host='127.0.0.1', port='8080')
if __name__ == '__main__':
main()
然后运行 python main.py
【讨论】: