Wrong mime type for xml feed?

Ezra Zygmuntowicz ezmobius at gmail.com
Wed Sep 27 00:34:57 MSD 2006


On Sep 26, 2006, at 1:18 PM, Igor Sysoev wrote:
> As I understand from your configuration, "/feed/atom.xml" may be  
> handled
> by backend. And that request is really handled by backend: nginx never
> set the "ETag" header line, so the "Content-Type: text/plain" is  
> set by
> backend too. nginx does not change the "Content-Type", so you need  
> configure
> it on backend.
>
>
> Igor Sysoev
> http://sysoev.ru/en/
>


	THanks for looking at it. I think its a bit more complex then that.  
The atom feed is served by a rails backend but is then cached on  
diskl and served by nginx until it gets expired again. Standard rails  
page caching setup. So when there is no file cached on disk yet, the  
first hit to the url gives this header:

rick at ricks-computer:~% curl -I http://mephistoblog.com/2006/8/31/how- 
s-immortus-treating-you/changes.xml
HTTP/1.1 200 OK
Server: nginx/0.4.0
Date: Tue, 26 Sep 2006 20:26:28 GMT
Content-Type: application/xml
Connection: keep-alive
Status: 200 OK
Cache-Control: no-cache
Content-Length: 0

You can see the correct content type is being set here.


	Now after that first hit, rails wrote the changes.xml file onto disk  
and the rewrite rules are set to serve static content first if it is  
present. So the second request to the same url gives a different  
header. And I double-checked the nginx log and rails log and this  
second request is definitely being served by nginx and not rails.

rick at ricks-computer:~% curl -I http://mephistoblog.com/2006/8/31/how- 
s-immortus-treating-you/changes.xml
HTTP/1.1 200 OK
Server: nginx/0.4.0
Date: Tue, 26 Sep 2006 20:26:32 GMT
Content-Type: text/plain; charset=ISO-8859-1
Connection: keep-alive
ETag: "45198cf4-12b7-743e4"
Last-Modified: Tue, 26 Sep 2006 20:26:28 GMT
Content-Length: 4791


	I really appreciate your help. Can you see what the issue is?

Thanks
-Ezra






More information about the nginx mailing list