1

我希望我的基于 django 的 heroku 应用程序将 /static/images/abc.png__someconstantstring 重定向到其他一些 url。

通常我使用 nginx 处理它。

但是,在heroku中,我认为我不能配置静态文件路由,所以我尝试使用中间件但request.path打印“/favicon.ico”(在本地测试,而不是在heroku上测试)。

解决方案是什么?我想我错过了一些关于中间件的东西,那可能是什么原因?

无论如何,我不认为heroku允许通过django服务器请求静态文件,可能会使用其他东西来处理。所以,我绝对认为我不能使用中间件、url 等。heroku 中可能有一些与静态文件路由相关的解决方案。你能告诉我吗?

谢谢

4

1 回答 1

0

You can force your django app server serve static content for you by defining custom view and adding it into URLs like this:

urlpatterns += patterns('',
    (r'^static/(?P<path>.*)$', view.MyStaticFilesView.as_view()),
)

So now you can get path variable and create your own logic. Just ensure that you return images, texts or any other content with propper content-type. And also you can track __someconstantstring and redirect anywhere you want.

This method will cause additional load to your app server.

于 2013-08-08T11:25:18.610 回答