Apache Interface
Compatibility with Web Server  
   
Compatibility Differences between the Apache Interface and the ProvideX Webserver

For the most part, applications designed to work with the ProvideX Web server will run without modification under the Apache HTTP Interface. The following is a list of some of the differences you will see in the interface.

  • In order to access the body of the request, the Apache interface loads the complete body contents into the global variable %BODY_CONTENT$ instead of requiring you to access the information via the memory file contained in %BODY_BUFF. Existing logic that attempts to parse the body of the request should be changed to use the global variable %BODY_CONTENT$.
  • When processing multi-part forms, such as those used when uploading data files, the field contents will be extracted automatically from the request and loaded into the appropriate variables. See the section on Uploading Files via the browser below.
  • The global functions fn%HtmlEncode and fn%HtmlDecode are not presently provided.
  • Since each session is an independent process, global variables, files, and objects will never be maintained across sessions. Using the Web server it was possible, although not desirable, to maintain these across different sessions from different workstations. The Apache interface makes sure this will not happen.
  • Not all global variables available in the Webserver are present in the Apache HTTP interface.
  • By default the START_UP program from the cgi-bin directory is run as opposed to the *web/start_up program. If desired you can add a SetEnv PVXSTART *web/start_up to your Apache configuration file to replicate the Web Server functionality.