Hello,

I'm facing a strange bug between Apache and Zope. I'm suspecting Apache but I need to prove that Zope isn't at the origin of this mess.

In the two files attached you have the request sent by firefox logged with livehttpheaders (request.orig.txt) and the request read in ZPublisher/Publisy.py=>publish with request.stdin.read(). You can see that a part of the request overload the start's of it. The size of file in the request is 6855 bits. I don't understand how this is possible.

Two apache servers and one ZEO cluster composing the architecture :
- the first Apache 2.1 is a FreeBSD gateway for external requests : it's using SSL with an homemade certificate and ProxyPass/ProxyPassReverse to redirect to the second server on the 8080 port
- the second Apache 2.2 server is on Windows Server 2003 and listening on 80 and 8080.
- the port 80 for all local requests with mod_auth_sspi to handle the SSO and redirect to a first ZEO client
- the port 8080 for outside requests from the first Apache server without SSO and redirect to a second ZEO client

There is a know bug with apache and SSL but only for requests above 128KB: here the request's weight is about 8KB.

Is there something that modifies the incoming request before it comes in the publish module ?

Regards,
--
Encolpe Degoute
        <encolpe.dego...@quadra-informatique.fr>
POST 
/intranet/tests-admin/portal_factory/File/file.2012-01-27.5277774747/atct_edit 
HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 (Ubuntu; X11; Linux x86_64; rv:9.0.1) Gecko/20100101 
Firefox/9.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: fr,fr-fr;q=0.8,fr-ca;q=0.6,en;q=0.4,de;q=0.2
Accept-Encoding: gzip, deflate
Accept-Charset: UTF-8,*
Connection: keep-alive
Referer: 
https://example.com/intranet/tests-admin/portal_factory/File/file.2012-01-27.5277774747/atct_edit
Cookie: __ac="bWFxdWlsbGFnZTM6bWFxdWlsbGFnZQ%3D%3D"
Content-Type: multipart/form-data; 
boundary=---------------------------160730456519863244361435514965
Content-Length: 8685
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="id"

file.2012-01-27.5277774747
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="title"

CELA
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="description"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="description_text_format"

text/plain
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="file_file"; filename="rst cheatsheet.rst"
Content-Type: application/octet-stream

=====================================================
 The reStructuredText_ Cheat Sheet: Syntax Reminders
=====================================================
:Info: See <http://docutils.sf.net/rst.html> for introductory docs.
:Author: David Goodger <good...@python.org>
:Date: $Date: 2006-01-23 02:13:55 +0100 (Mon, 23 Jän 2006) $
:Revision: $Revision: 4321 $
:Description: This is a "docinfo block", or bibliographic field list

Section Structure
=================
Section titles are underlined or overlined & underlined.

Body Elements
=============
Grid table:

+--------------------------------+-----------------------------------+
| Paragraphs are flush-left,     | Literal block, preceded by "::":: |
| separated by blank lines.      |                                   |
|                                |     Indented                      |
|     Block quotes are indented. |                                   |
+--------------------------------+ or::                              |
| >>> print 'Doctest block'      |                                   |
| Doctest block                  | > Quoted                          |
+--------------------------------+-----------------------------------+
| | Line blocks preserve line breaks & indents. [new in 0.3.6]       |
| |     Useful for addresses, verse, and adornment-free lists; long  |
|       lines can be wrapped with continuation lines.                |
+--------------------------------------------------------------------+

Simple tables:

================  ============================================================
List Type         Examples
================  ============================================================
Bullet list       * items begin with "-", "+", or "*"
Enumerated list   1. items use any variation of "1.", "A)", and "(i)"
                  #. also auto-enumerated
Definition list   Term is flush-left : optional classifier
                      Definition is indented, no blank line between
Field list        :field name: field body
Option list       -o  at least 2 spaces between option & description
================  ============================================================

================  ============================================================
Explicit Markup   Examples (visible in the `text source <cheatsheet.txt>`_)
================  ============================================================
Footnote          .. [1] Manually numbered or [#] auto-numbered
                     (even [#labelled]) or [*] auto-symbol
Citation          .. [CIT2002] A citation.
Hyperlink Target  .. _reStructuredText: http://docutils.sf.net/rst.html
                  .. _indirect target: reStructuredText_
                  .. _internal target:
Anonymous Target  __ http://docutils.sf.net/docs/ref/rst/restructuredtext.html
Directive ("::")  .. image:: images/biohazard.png
Substitution Def  .. |substitution| replace:: like an inline directive
Comment           .. is anything else
Empty Comment     (".." on a line by itself, with blank lines before & after,
                  used to separate indentation contexts)
================  ============================================================

Inline Markup
=============
*emphasis*; **strong emphasis**; `interpreted text`; `interpreted text
with role`:emphasis:; ``inline literal text``; standalone hyperlink,
http://docutils.sourceforge.net; named reference, reStructuredText_;
`anonymous reference`__; footnote reference, [1]_; citation reference,
[CIT2002]_; |substitution|; _`inline internal target`.

Directive Quick Reference
=========================
See <http://docutils.sf.net/docs/ref/rst/directives.html> for full info.

================  ============================================================
Directive Name    Description (Docutils version added to, in [brackets])
================  ============================================================
attention         Specific admonition; also "caution", "danger",
                  "error", "hint", "important", "note", "tip", "warning"
admonition        Generic titled admonition: ``.. admonition:: By The Way``
image             ``.. image:: picture.png``; many options possible
figure            Like "image", but with optional caption and legend
topic             ``.. topic:: Title``; like a mini section
sidebar           ``.. sidebar:: Title``; like a mini parallel document
parsed-literal    A literal block with parsed inline markup
rubric            ``.. rubric:: Informal Heading``
epigraph          Block quote with class="epigraph"
highlights        Block quote with class="highlights"
pull-quote        Block quote with class="pull-quote"
compound          Compound paragraphs [0.3.6]
container         Generic block-level container element [0.3.10]
table             Create a titled table [0.3.1]
list-table        Create a table from a uniform two-level bullet list [0.3.8]
csv-table         Create a table from CSV data (requires Python 2.3+) [0.3.4]
contents          Generate a table of contents
sectnum           Automatically number sections, subsections, etc.
header, footer    Create document decorations [0.3.8]
target-notes      Create an explicit footnote for each external target
meta              HTML-specific metadata
include           Read an external reST file as if it were inline
raw               Non-reST data passed untouched to the Writer
replace           Replacement text for substitution definitions
unicode           Unicode character code conversion for substitution defs
date              Generates today's date; for substitution defs
class             Set a "class" attribute on the next element
role              Create a custom interpreted text role [0.3.2]
default-role      Set the default interpreted text role [0.3.10]
title             Set the metadata document title [0.3.10]
================  ============================================================

Interpreted Text Role Quick Reference
=====================================
See <http://docutils.sf.net/docs/ref/rst/roles.html> for full info.

================  ============================================================
Role Name         Description
================  ============================================================
emphasis          Equivalent to *emphasis*
literal           Equivalent to ``literal`` but processes backslash escapes
PEP               Reference to a numbered Python Enhancement Proposal
RFC               Reference to a numbered Internet Request For Comments
raw               For non-reST data; cannot be used directly (see docs) [0.3.6]
strong            Equivalent to **strong**
sub               Subscript
sup               Superscript
title             Title reference (book, etc.); standard default role
================  ============================================================

-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="relatedItems:default:list"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="fieldset"

default
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="form.submitted"

1
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.field:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.type:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.destination:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="last_referer"

https://example.com/intranet/tests-admin
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="form_submit"

Enregistrer
-----------------------------160730456519863244361435514965--

HTTP/1.1 200 OK
Date: Fri, 27 Jan 2012 11:47:35 GMT
Server: Zope/(Zope 2.9.8-final, python 2.4.4, win32) ZServer/1.1 
Plone/2.5.3-final
Content-Length: 32749
Expires: Sat, 1 Jan 2000 00:00:00 GMT
Content-Type: text/html;charset=utf-8
Content-Language: fr
9465433410802318
Content-Disposition: form-data; name="add_reference.destination:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="last_referer"

https://example.com/intranet/tests-admin
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="form_submit"

Enregistrer
-----------------------------160730456519863244361435514965--
="description_text_format"

text/plain
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="file_file"; filename="rst cheatsheet.rst"
Content-Type: application/octet-stream

=====================================================
 The reStructuredText_ Cheat Sheet: Syntax Reminders
=====================================================
:Info: See <http://docutils.sf.net/rst.html> for introductory docs.
:Author: David Goodger <good...@python.org>
:Date: $Date: 2006-01-23 02:13:55 +0100 (Mon, 23 Jän 2006) $
:Revision: $Revision: 4321 $
:Description: This is a "docinfo block", or bibliographic field list

Section Structure
=================
Section titles are underlined or overlined & underlined.

Body Elements
=============
Grid table:

+--------------------------------+-----------------------------------+
| Paragraphs are flush-left,     | Literal block, preceded by "::":: |
| separated by blank lines.      |                                   |
|                                |     Indented                      |
|     Block quotes are indented. |                                   |
+--------------------------------+ or::                              |
| >>> print 'Doctest block'      |                                   |
| Doctest block                  | > Quoted                          |
+--------------------------------+-----------------------------------+
| | Line blocks preserve line breaks & indents. [new in 0.3.6]       |
| |     Useful for addresses, verse, and adornment-free lists; long  |
|       lines can be wrapped with continuation lines.                |
+--------------------------------------------------------------------+

Simple tables:

================  ============================================================
List Type         Examples
================  ============================================================
Bullet list       * items begin with "-", "+", or "*"
Enumerated list   1. items use any variation of "1.", "A)", and "(i)"
                  #. also auto-enumerated
Definition list   Term is flush-left : optional classifier
                      Definition is indented, no blank line between
Field list        :field name: field body
Option list       -o  at least 2 spaces between option & description
================  ============================================================

================  ============================================================
Explicit Markup   Examples (visible in the `text source <cheatsheet.txt>`_)
================  ============================================================
Footnote          .. [1] Manually numbered or [#] auto-numbered
                     (even [#labelled]) or [*] auto-symbol
Citation          .. [CIT2002] A citation.
Hyperlink Target  .. _reStructuredText: http://docutils.sf.net/rst.html
                  .. _indirect target: reStructuredText_
                  .. _internal target:
Anonymous Target  __ http://docutils.sf.net/docs/ref/rst/restructuredtext.html
Directive ("::")  .. image:: images/biohazard.png
Substitution Def  .. |substitution| replace:: like an inline directive
Comment           .. is anything else
Empty Comment     (".." on a line by itself, with blank lines before & after,
                  used to separate indentation contexts)
================  ============================================================

Inline Markup
=============
*emphasis*; **strong emphasis**; `interpreted text`; `interpreted text
with role`:emphasis:; ``inline literal text``; standalone hyperlink,
http://docutils.sourceforge.net; named reference, reStructuredText_;
`anonymous reference`__; footnote reference, [1]_; citation reference,
[CIT2002]_; |substitution|; _`inline internal target`.
♀
Directive Quick Reference
=========================
See <http://docutils.sf.net/docs/ref/rst/directives.html> for full info.

================  ============================================================
Directive Name    Description (Docutils version added to, in [brackets])
================  ============================================================
attention         Specific admonition; also "caution", "danger",
                  "error", "hint", "important", "note", "tip", "warning"
admonition        Generic titled admonition: ``.. admonition:: By The Way``
image             ``.. image:: picture.png``; many options possible
figure            Like "image", but with optional caption and legend
topic             ``.. topic:: Title``; like a mini section
sidebar           ``.. sidebar:: Title``; like a mini parallel document
parsed-literal    A literal block with parsed inline markup
rubric            ``.. rubric:: Informal Heading``
epigraph          Block quote with class="epigraph"
highlights        Block quote with class="highlights"
pull-quote        Block quote with class="pull-quote"
compound          Compound paragraphs [0.3.6]
container         Generic block-level container element [0.3.10]
table             Create a titled table [0.3.1]
list-table        Create a table from a uniform two-level bullet list [0.3.8]
csv-table         Create a table from CSV data (requires Python 2.3+) [0.3.4]
contents          Generate a table of contents
sectnum           Automatically number sections, subsections, etc.
header, footer    Create document decorations [0.3.8]
target-notes      Create an explicit footnote for each external target
meta              HTML-specific metadata
include           Read an external reST file as if it were inline
raw               Non-reST data passed untouched to the Writer
replace           Replacement text for substitution definitions
unicode           Unicode character code conversion for substitution defs
date              Generates today's date; for substitution defs
class             Set a "class" attribute on the next element
role              Create a custom interpreted text role [0.3.2]
default-role      Set the default interpreted text role [0.3.10]
title             Set the metadata document title [0.3.10]
================  ============================================================

Interpreted Text Role Quick Reference
=====================================
See <http://docutils.sf.net/docs/ref/rst/roles.html> for full info.

================  ============================================================
Role Name         Description
================  ============================================================
emphasis          Equivalent to *emphasis*
literal           Equivalent to ``literal`` but processes backslash escapes
PEP               Reference to a numbered Python Enhancement Proposal
RFC               Reference to a numbered Internet Request For Comments
raw               For non-reST data; cannot be used directly (see docs) [0.3.6]
strong            Equivalent to **strong**
sub               Subscript
sup               Superscript
title             Title reference (book, etc.); standard default role
================  ============================================================

-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="relatedItems:default:list"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="fieldset"

default
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="form.submitted"

1
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.field:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.type:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="add_reference.destination:record"


-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="last_referer"

https://example.com/intranet/tests-admin
-----------------------------160730456519863244361435514965
Content-Disposition: form-data; name="form_submit"

Enregistrer
-----------------------------160730456519863244361435514965--

_______________________________________________
Zope maillist  -  Zope@zope.org
https://mail.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists -
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to