1

我有一个运行 apache 前端的 uWSGI 服务。我的 apache conf 处理部分类似于:

     <Location /myapp>
         SetHandler uwsgi-handler
         uWSGISocket /var/run/uwsgi/myapp.sock
         Allow from all
    </Location>

我想在我的应用程序的响应中添加一个自定义标题。我知道我可以通过在应用程序中添加一些代码来做到这一点,但我更喜欢通过在指令mod_headers中添加以下行来做到这一点Location

         Header set Custom-Header "hello world"

尽管mod_headers 文档指出,它似乎不起作用

该指令可以替换、合并或删除 HTTP 响应标头。标题在内容处理程序和输出过滤器运行后立即修改, 允许修改传出标题

我做错了什么,或者理解错了什么?

4

1 回答 1

1

如文档中所述,mod_uwsgi 非常原始并使用“assbackwards”模式,除非您启用 CGI 模式。这种模式(assbackwards)提供了卓越的性能,但基本上破坏了所有的过滤器。您应该使用 mod_proxy_uwsgi(完全对 apache 友好)或让 uWSGI 使用内部路由为您完成艰苦的工作:

http://uwsgi-docs.readthedocs.org/en/latest/InternalRouting.html

(或 --add-header 更具侵入性的选项)

于 2014-09-11T09:12:05.880 回答