2.1.2.1.2 Web Servers

Protocol clients do one of the following when they attempt to open a file on a Web server:

  • Open the file with read-only permission in browse mode.

  • Open the file with write permission in edit mode and lock the file. The lock helps ensure that the protocol client has exclusive access to the file.

To determine the correct action, a protocol client evaluates the full path to the file, factors explicit user actions such as choosing edit mode, and investigates the capabilities of the protocol server that manages the path. The following steps describe this process.

  1. The protocol client sends an HTTP OPTIONS request to the folder that contains the file, as described in [RFC2616].

  2. The Web server does one of the following:

    • Responds with a list of supported methods for the folder with the specified Uniform Resource Identifier (URI). The response also indicates whether the server supports various document management features, as described in section 2.1.3.

    • Rejects the request. If the request is rejected, the protocol client tries to open the file in browse mode by sending an HTTP GET request.

  3. If the request is not rejected, the protocol client processes the response by evaluating the presence and value of the X-MSFSSHTTP header, and then the MS-Author-Via header, as described in the following sections.

X-MSFSSHTTP header

The protocol client evaluates the presence and value of the X-MSFSSHTTP header in the protocol server response as follows, depending on which protocol client sent the request:

  • Microsoft Excel 2013, Microsoft Excel 2010, Microsoft PowerPoint 2013, Microsoft PowerPoint 2010, Microsoft Word 2013, and Microsoft Word 2010 examine the X-MSFSSHTTP header value to determine whether to use the File Synchronization via SOAP over HTTP Protocol. If the value is greater than or equal to "1.0", the protocol client uses the File Synchronization via SOAP over HTTP Protocol to access the file. If the value is less than "1.0" or the header is not present, the protocol client does not use the File Synchronization via SOAP over HTTP Protocol to access the file, but proceeds to evaluate the MS-Author-Via header, as described following.

  • Microsoft OneNote 2013 and Microsoft OneNote 2010 use the File Synchronization via SOAP over HTTP Protocol to access the file, as described in section 2.1.14.

MS-Author-Via header

After the protocol client evaluates the presence and value of the X-MSFSSHTTP header, it evaluates the value of the MS-Author-Via header, as described in [MS-WDVSE].

If the protocol client uses the File Synchronization via SOAP over HTTP Protocol, as described in [MS-FSSHTTP], it uses the value of the MS-Author-Via header to determine whether the protocol server supports the FrontPage Server Extensions Remote Protocol, as described in [MS-FPSE], for data access calls. If the protocol client does not use the File Synchronization via SOAP over HTTP Protocol, it uses the value of the MS-Author-Via header to determine which Web authoring protocol to use. The following list describes the conditions under which these determinations are made:

  • If the value of the MS-Author-Via header is "MS-FP/4.0,DAV", the protocol server supports the FrontPage Server Extensions Remote Protocol and the HTTP Extensions for Distributed Authoring WebDAV, as described in [RFC2518]. The determination of which protocol to use is then based on the version of the operating system and the protocol client that are in use:

    • If installed on Windows Vista operating system or Windows 7 operating system, Microsoft Office 2013, Microsoft Office 2010 suites, or the 2007 Microsoft Office system protocol clients use the HTTP Extensions for Distributed Authoring WebDAV to access the file.

    • If installed on Windows XP operating system, both Office 2010 and the 2007 Office system protocol clients use the FrontPage Server Extensions Remote Protocol to access the file.

    • Microsoft Office 2003 protocol clients use the FrontPage Server Extensions Remote Protocol to access the file.

  • If the value of the MS-Author-Via header is "DAV", the protocol server supports WebDAV and does not support the FrontPage Server Extensions Remote Protocol. The protocol client uses the HTTP Extensions for Distributed Authoring WebDAV to access the file.

  • If the MS-Author-Via header is not present and a DAV header is present, the protocol client uses WebDAV to access the file and the following occurs, depending on the value of the DAV header: 

    • If the value is "1", file locks are neither supported nor recommended. The protocol client does not notify the user that the protocol server does not support file locks. If there are conflicting write operations to the file from separate protocol clients, the changes that are made in the last write operation are used.

    • If the value is "1,2", file locks are supported.

  • If the protocol server does not specify an authoring protocol, the protocol client sends an HTTP GET request to open the file as read-only in browse mode. This means that the protocol client can save only a copy of the file; it cannot save changes to the original file. Any data that is received by the HTTP GET request is considered file data unless the protocol server responds with an "Access Denied" or "405 Not Supported" error. An "Access Denied" response consists of one of the following codes: 401, 302 (with additional headers), or 403 (with additional headers).