[ic] Died in server spawn: read: closed

Stefan Hornburg (Racke) racke at linuxia.de
Wed Jan 5 23:31:19 UTC 2011


On 01/05/2011 06:25 PM, Josh Lavin wrote:
> On 01/05/2011 04:55 PM, Grant wrote:
>>>>>> I'm getting messages like this in my global error log every few days:
>>>>>>
>>>>>> Died in server spawn: read: closed at
>>>>>> /usr/local/interchange/lib/Vend/Server.pm line 728.
>>>>>>
>>>>>> Today a user described what I think was a 500 Internal Server Error
>>>>>> apache2 error page which corresponds to one of these errors.
>>>>>>
>>>>>> Does anyone know more about what could be happening or how to
>>>>>> track it
>>>>>> down?
>>>>>>
>>>>>> - Grant
>>>>>
>>>>> Have you checked your Apache error logs for entries at that same time?
>>>>>
>>>>> DB
>>>>
>>>> I've just done that and I see that the error corresponds to this
>>>> apache2 error message about half of the time:
>>>>
>>>> close: Broken pipe\n,
>>>>
>>>> It always seems to be a POST and it can be SSL or not. Any idea where
>>>> to look from here?
>>>
>>> Are you using Interchange::Link, or the regular cgi-bin script?
>>
>> I am using Interchange::Link actually.
>
> I suggest you remove Interchange::Link and see if that fixes it. AFAIK,
> this module is no longer maintained, and it and mod_interchange have had
> their share of problems in the past.
>
> If you are using IC::Link to avoid 'cgi-bin' in the URLs, there is a
> howto in the online docs that is a good starting point for using
> RewriteRules. My personal usage is below. This method prevents
> Interchange from having to handle all 404 requests, unless the request
> does not have an extension, or is a known file type that IC serves. YMMV.
>
> ScriptAlias /cgi-bin/ /home/mysite/cgi-bin/
> RewriteEngine On
>
> RewriteCond /home/mysite/www%{REQUEST_FILENAME} -f
> RewriteRule ^.+$ - [L,NS]
>
> RewriteCond %{REQUEST_FILENAME} \.
> RewriteCond %{REQUEST_FILENAME} !\.(?:html|txt|xml|pdf|iif)$
> RewriteRule ^.+$ - [L,NS]
>
> RewriteCond %{REQUEST_FILENAME} !^/cgi-bin/mysite/?
> RewriteRule ^(.+)$ /cgi-bin/mysite$1 [L,NS,PT]
>
> RewriteRule ^/(index(\.html?)?)?$ /cgi-bin/mysite/index [L,NS]
>

You have to be careful when applying this to an existing site using /cgi-bin/
in the URLs, better 301 the old links to the new ones for SEO purposes.

Regards
	Racke


-- 
LinuXia Systems => http://www.linuxia.de/
Expert Interchange Consulting and System Administration
ICDEVGROUP => http://www.icdevgroup.org/
Interchange Development Team




More information about the interchange-users mailing list