New Features in 2.0.4
Fixes
- Fix for MatrixSsl handler where data was being read twice (Thanks
Ben)
- Fix header in config.h
- Add new switches to configure: --enable-ejs, --enable-samples, --enable-test,
--with-PACKAGE-cflags, --with-PACKAGE-iflags, --with-PACKAGE-ldflags
- Fix several compilers warnings for ARM
- Fix crash when reading a users.db authorization file
- Fix MPR Var deep copy (Thanks Andrew)
- Fix MPR Select / Task interaction
New Features in 2.0.3
Fixes
- Fix httpPassword overwriting existing password entries (Thanks lhearin)
- Fixed bad build output formatting. (Thanks Matt McNeill)
- Improved error messages in AppWeb
- Fix windows SSL crash due when missing a TypesConfig directive and
using SSL (Thanks)
- Fix wrong license agreement display when installing.
New
Features in 2.0.2
Fixes
- Fix for form.php to post back to itself
- Various code cleanup
- Compiler fixes for when BLD_FEATURE_LOG is disabled
New
Features in 2.0.1
Fixes
- Fix for VxWorks truncating large files
- Fix for doubling of EGI variable values
- Fix PHP flushing
New
Features in 2.0.0
Version 2.0.0 is the next stable release after the 1.2 series. The description
below lists the major changes relative to the 1.2 release.
Major
- Embedded Server Pages greatly enhanced. New parser, new Embedded JavaScript.
Now supporting:
- Session state access via the session[] array
- Global application data via the application[] array
- Uploaded files accessible via files[] array
- Configurable auto-session creation
- Other variable arrays include: cookies[], server[], request[], headers[],
form[], global[], local[]
- Embedded Server Pages broken out as a separate source code module.
- Embedded JavaScript rewritten and greatly enhanced. Now supports:
- Object type and the new reserved
word
- Array type
- Boolean type
- Floating point
- 64 bit integer support
- Automatic casting between types
- Functions
- for / in statement to iterate through arrays or objects
- Extended standard procedure library: print, println, printVars,
trace
- Merged appWeb and winAppWeb. Windows application intelligently runs
as a command line program, windows program or system service depending
on the command line switches. Easier invocation by supporting configuration
via command line. Can now just run "appWeb".
- File upload module completed and now supported. File upload usable
from ESP, EGI and CGI.
- PHP 5.0 support
- Save configuration routines to save the run-time configuration back
to a standard AppWeb configuration file.
- Completely new installation and packaging routines. Supports a flexible
make install set of targets including: install, install-dev, install-release,
install-samples, install-doc, install-src, install-all. Make install
also supports a ROOT_DIR environment setting to re-base the installation
directories. This feature includes a safe uninstall. See INSTALL.TXT
in the source directory for full details.
- Ability to create new native distribution packages from a source build
tree.
- VxWorks port.
- Extended cross compilation system to support cross-O/S development.
- Rewrite the CGI subsystem to be more uniform across all operating
systems.
- Lots of improvements to the configuration and build system
- Windows switches to use configure and the makefile system. Supports
a subset of CYGWIN called winTools for building.
- Added file upload handler
New
Features in 1.3.6
Fixes
- Several compile time fixes when using configure with some options.
Fix for building EJS without floating point. (Thanks Nicolas Thill)
- Fix for not launching the documentation on Windows when the installation
is complete
- Fixed date calculations for IF_MODIFIED requests being off for 1 day.
Thanks (Julie + Mikael)
- Fixed formatting of README.TXT files to be DOS format (CR/LF)
- Fixed request.cpp compilation when not using SSL
- Fix building with C-API without ESP
- Fix crash in request.cpp when requests timeout
- Fix compiling request.cpp without SSL
New
Features in 1.3.5
Minor Features
- Add request variable REQUEST_TRANSPORT that is set to "http" or "https"
depending on whether SSL is used or not.
- Simplify the regeneration of the documentation.
- EJS: Add support for automatic casting to strings when types require
casting.
Fixes
- Fix MatrixSsl bug where some data can be lost and a request can hang.
Thanks Mikael.
- Fix uClinux integration. Support uClinux 3.2.0
- Fix for browser not refreshing content correctly. Change to copyHandler.
Thanks Axialdev, Mediatrix
- Fix for single threaded compilation. Thanks Pauli.
- Fix for copmiling samples when using --disable-static
- Fix for running configure on linux. Changes to bin/bld. Thanks Vinvagh.
- Fix for uClinux building. Changes to bin/bld to use BLD_CFLAGS instead
of BLD_LDFLAGS. Thanks Ben.
- Fix for building on Linux. Was not testing for existance of cygpath
correctly. Thanks Barry Stone, et al.
- Fixed bugs in EJS for comparisions with non-boolean operands. Thanks
Martin Brochu.
- Fix EJS issue with unary minus calculations.
New
Features in 1.3.4-5
Major Features
- Completely new installation and packaging routines. Supports a flexible
make install set of targets including: install, install-dev, install-release,
install-samples, install-doc, install-src, install-all. Make install
also supports a ROOT_DIR environment setting to re-base the installation
directories. This feature includes a safe uninstall. See INSTALL.TXT
in the source directory for full details.
- Ability to create new native distribution packages from a source build
tree.
- Create a C API for the httpClient. Use --enable-c-api-client
Minor Features
- Expose the GoAhead WebServer compatibility API via the Compat module
(Thanks KiNetworks)
- Create a C API for the httpClient. Use --enable-c-api-client
- Removed SessionAutoCreate from the makefiles. The default for this
is now off. Users must include useSession(); in their ESP pages or
explicitly turn this directive back on. This was removed to boost performance
for pages that do not require session handling.
- Added a new LimitScriptSize directive to specify the maximum ESP script
size. This replaces the previously overloaded use of LimitResponseBody.
(Thanks Meadiatrix).
- Partitioned documentation to prepare for future derivative products.
Stay tuned.
- Fix source tree so it can be built from a read-only tree. (Thanks Brendan
Simon).
- Update to latest PHP 5.0.3 release for the PHP module
- Support spaces in file names and install in "/Program Files/Mbedthis
AppWeb" on Windows by default.
- Updated WinTools to use latest Cygwin tools.
- Added file upload limit. Directive is LimitUploadSize.
- Convert windows make package to use cygwin zip utilities and not wzzip.
Fixes
- Fix including of ESP include files to look for the included file
in the same directory as the base ESP page.
- Fix for "make uninstall" to not to change permissions
of any standard directories
- Fix seg fault on large ESP pages. This occurred when the page exceeded
the maximum configured via the LimitResponseBody directive. (Thanks
Mediatrix). Use LimitScriptSize in future to specify or modify the
default maximum size (128K) of a script.
- Added clearer error messages when the maximum script size is exceeded.
- Fixed missing API documentation.
- Fix permissions on the bin directory for installed appWeb (make install).
- Fix errors in make install for missing users.dist, groups.dist and
libsslModule.so
- Fix obsecure hang in httpClient if server dies.
- Add cpio, id and awk to WinTools. Also added curl for those using the
test framework via an AppWeb subversion checkout.
- Fix assert in ESP when assigning to non-existant object arrays
- Warn in ESP if assigning to sessions and sessions are not enabled.
Uses now must either put useSession() in their web page or turn on
SessionAutoCreate in their configuration file.
- Fix for a multithreaded race in EJS/ESP under heavy load. Our
longevity test harness caught this one.
- Fixed multithreaded deadlock in CGI under heavy load.
- Fix printVars displaying the wrong value for an array length (Thanks
Bjorn -
baherwig)
- Fixed crash in testClient when server is not running. Only impacted
test framework.
- Fixed search path for locating the ServerRoot.
- Fixed several bugs in the file upload handler for certain boundary
conditions. Thanks Martin Brochu.
- Fixed PHP5 handler crash if a form variable is empty. Thanks Mik.
- Made MaRequest::readPostData more robust.
New
Features in 1.3.3
The 1.3.1 and 1.3.2 releases were internal releases only and were not publically made available.
Major Features
- VxWorks port.
- Extended cross compilation system to support cross-O/S development.
- Rewrite the CGI subsystem to be more uniform across all operating systems.
Minor Features
- The PHP handler now supports the PHP flush function.
- Added function to create ESP array variables in ESP C functions.
- Add file upload.esp sample file.
- Fix and extend samples for the new ESP and EJS.
- Add support for the If-Match and If-UnMatch HTTP headers. (Thanks Pauli Saska)
- Disable timeouts if running AppWeb in debug mode (-D). This disables the Keep-Alive, Session and general request Timeout.
- Allow Alias directives to alias files. Previously only directories could be aliased. (Thanks
pmichaud)
- Rewrite of CGI / CMD to be simpler. Necessitated by VXWORKS port.
- Speedup makedep on Windows for first time builds.
- Add ESP convenience API espCreateArrayVar.
- Add mprSetThreads API to extend the C API.
Fixes
- The following fixes are applied from 1.2.4
- Fix in validating URLs with consecutive "/" characters. (Thanks Tom Gerardy)
- Fix for upload handler with ":" characters in the upload URL. ((Thanks Pauli Saksa)
- Fix for EGI and the Compat module for GoAhead WebServer compatibility (Thanks Hew Wolff).
- Add new directive ListenIF that allows listening on an interface. (Thanks Pauli Saksa)
- Fix corruption bug for long ESP/EJS tokens. (Thanks Axialdev)
- Change session cookies to only persist while the user's browser is open.
- Fix to allow functions to have the opening brace on the same line as the function keyword.
- Get all samples building. Supply makefiles for the AppWeb build system and stand-alone makefiles.
- Improve error messages for several error conditions to make diagnosis easier.
- Add msvcrt.dll to the distribution to prevent DLL versioning issues.
- Fix various memory leaks
- Fix for EJS to not iterate over the length property for arrays in a for... in statement
- Fix for EJS to allow "var" in a for (var .. statement
- Fix for EJS syntax error when defining a for (.. in statement inside a function
- Fix for EJS "var o = new Array;"
- Fix for EJS testing variables against -1
- Fix for crashing issue CGI when a CGI request times out.
- Update configure to fix syntax error for --with-c-api. Support --with-c_api as an alias.
- Fix for "make uninstall" to not remove any standard directories.
- Fixed matrixssl handler hanging when serving large files. Thanks Mik.
- Fixed sessions being continually re-created when browsers respond with multiple
cookies. Thanks Mark.
- Fix several compiler errors when compiling single-threaded. Thanks Pauli.
- Fix compiler errors when excluding various modules.
New Features in 1.3
This
is a major feature release and is part of the development branch. Users
wanting stability should continue to use the stable 1.2.X series. This
1.3 release does have some compatibility changes.
Major Features
- Embedded Server Pages greatly enhanced. New parser, new Embedded JavaScript. Now supporting:
- Session state access via the session[] array
- Global application data via the application[] array
- Uploaded files accessible via files[] array
- Configurable auto-session creation
- Other variable arrays include: cookies[], server[], request[], headers[], form[], global[], local[]
- Embedded Server Pages broken out as a separate source code module.
- Embedded JavaScript rewritten and greatly enhanced. Now supports:
- Object type and the new reserved word
- Array type
- Boolean type
- Floating point
- 64 bit integer support
- Automatic casting between types
- Functions
- for / in statement to iterate through arrays or objects
- Extended standard procedure library: print, println, printVars, trace
- Easier invocation by supporting configuration via command line. Can now just run "appWeb".
- Merged appWeb and winAppWeb. Windows application
intelligently runs as a command line program, windows program or system
service depending on the command line switches.
- File upload module completed and now supported. File upload usable from ESP, EGI and CGI.
- PHP 5.0 support
- Save configuration routines to save the run-time configuration back to a standard AppWeb configuration file.
Minor Features
- Simplify the build system by removing the need for template files.
- Aliases are now per host instead of being per server.
- Allow Aliases to preceed or follow directory blocks that describe the alias destination.
- Build system improvements for building external packges
- Improved 64-bit and Solaris support.
Fixes
- Fix bug where URLs that matched aliases were incorrectly
defining an their CGI EXTRA_PATH calculation. Added a new configuration
directive ExtraPath that can be used in Location blocks to specify that
a handler should perform extra path calculations. NOTE: this is
normally not required.
- Fix some build issues with various configuration options.
- Fix the inheriting of directory authorization information.
Compatibility Changes
- The MaServer::configure command has reduced its parameter count from 2 to 1.
- maGetVar and maSetVar now require an object array argument to specify the variable array to access.
- The C++ EspProc method of creating ESP procedures is now
deprecated. It will be supported until version 3.X when it will be
removed from the product. Users should call espDefineCFunction instead.
- The EJS module has been removed it is now integrated into the ESP module.
- The previous session APIs have been integrated into MaRequest::setVar and MaRequest::getVar
New Features in 1.2.3
This is a minor bug fix release.
Fixes
- Fix compatibility issue in libcompatModule
with GoAhead WebServer. Was not creating environment variables for
posted data. Will only do this if the data is URL encoded.
- Fixed Windows not matching case of URL extensions correctly. (Thanks Ziv).
New Features in 1.2.2
This is a minor bug fix release.
Fixes
- Fix
for ESP includes. On windows, was including files with text processing
which resulted in bad content lengths. Now reading RAW.
- Added MatrixSSL handler (Thanks to J, Brian and Steve @ peersec)
- Re-added some missing documentation pages
- Changed default MPR number of threads to 10. Can be overridden in the appWeb.conf file. Thanks XDM.
- Fixed several authorization issues relating to ordering of directives in the configuration file. (Thanks Mathew O'Brien)
- Fixed encoding of "/" in query vars. (Thanks XDM)
- Fixed Windows not matching case of URL extensions correctly. (Thanks Ziv).
New Features in 1.2.1
This is a minor bug fix release.
Fixes
- Fix
for large SSL requests. Some large requests would not be processed and
would be prematurely terminated. There are no known security
implications.
New Features in 1.2
This 1.2 release rolls all the changes in the 1.1.X development stream
into a new stable release. The description below is a summary of
the key changes.
Major Features
- Integrated module for PHP4 and PHP5
- Enhanced Embedded Server Pages supporting post-back
- Session handling and cookie management
- Extended documentation with a wealth of new material
- Small C library support via uClibc
- uClinux support. Get the Patch for uClinux to support AppWeb.
- Completely revised build system and configuration to better support cross-compilation and modular selection of features.
Minor Features
- Enhanced C-API
- httpClient supports single threaded operation.
- New compact libminiStdc++ library to replace libstdc++ reduces memory footprint.
- Experimental ports for Solaris and MAC
- Upgraded PHP and OpenSSL versions
Fixes
- All fixes mentioned in the 1.1 stream below
- Fixed a Denial of Service issue where accesses to /esp could consume 100% of the CPU. (Thanks again Ziv Kamir)
Compatibility Changes
New Features in 1.1.3
Major Features
- Include PHP5 support
- Some important security fixes
- Enhanced uClibc support -- no patch required.
- Enhanced uClinux support. Patch available for uClinux.
Minor Features
- httpClient supports single threaded operation.
- Add new compact libminiStdc++ library to replace libstdc++. This reduces default memory footprint with glibc considerably.
- Merge Subversion initialization command setupTree into the configure command.
- Add to the top level Makefile and configure program the ability to autoconfigure.
- Improve
comments in configure, configuration template files and in the default
configuration files. The make.rules file is now common across all
operating systems.
- Eliminate the need for LD_LIBRARY_PATH unless debugging in the
tree. The "make run" target and many other internal build commands
automatically set the library path where required.
- Version the appWeb library.
- Include packaging file lists in the source release.
Fixes
- Fix location of the libraries needed by PHP when creating a distribution package
- Fix for URLs that have trailing "." or " " in Windows. Fix prevents
returning the page as pure text. This bug affected windows systems only
for handlers that are matching by extension. This typically means ESP
and PHP pages configured to match URLs by extension. If using URL
prefix matching, the bug does not appear.
- Fix the 'h' formatting option for the CustomLog directive. This outputs the remote host name in the access log
- Fix session timeouts. Session timeouts did not renew when
subsequent session activity occurred. Timeouts will now cause a session
to be deleted when there is no activity on the session for the timeout
period.
- Security fix for Windows allowing access to secured URLs by mixing case. (Thanks Ziv Kamir)
- Fix for HEAD, and TRACE not being handled correctly by some handlers. (Thanks again Ziv)
- Security fix for user message disclosing too much information when denying access. (Ziv)
- Fix for VirtualHosts (including SSL virtual hosts) incorrectly parsing authorization configuration directives. (Ziv)
- Fix when using BLD_FEATURE_ROMFS on Windows. Was still accessing file system routines. (Black&White)
New Features in 1.1.2
Major Features
- Enhanced cross-compiling support. Configure program
supports --build, --host and the setting of CFLAGS, IFLAGS, LDFLAGS,
CC, LD, AR, RANLIB, CC_FOR_BUILD, LD_FOR_BUILD.
- More documentation via README.TXT and FILES.TXT files in many directories.
- Small libc, uclibc support
- Uclinux support
Minor Features
- Merged per O/S configuration files into a single file.
Fixes
- Corrected the Windows Start Menu shortcut
- Rebuild OpenSSL with msvcrt.dll rather than msvcr71.dll
- Fix some errors in the README.HTML and converted to README.TXT
- Modify the source distribution appWeb.conf to not load libcompat
- Fixed handling of URLs with upper case extensions (e.g. file.HTML)
New Features in 1.1.1
Major Features
- Enhanced Embedded Server Pages (ESP) allowing post-back to same page
- Integrated Session handling including C and Javascript APIs.
- Include a more feature-rich PHP module and upgrade PHP version.
- Enhanced C-API (thanks Nick Ivanter)
- Authorization APIs for modifying user and group auth details at run-time
- Added a fully static appWeb program
- First pass Solaris port (thanks Peter Gravestock)
- Experimental fFile upload (Nick again)
Minor Features
- "make install" for installing directly from source
- Support full static linking with AppWeb libraries and building static versions.
- Add LoadModulePath directive to make it easier to maintain module paths
- Removed Matrix SSL handler. This is now being handled directly by PeerSec. Thanks guys. See (http://www.matrixssl.org)
- Speed up building on Windows with Cygwin
- Enhanced GoAhead WebServer API compatibility (thanks Art & Logic)
- Extended build system, configure command and bld script.
- Upgrade OpenSSL versions
Fixes
- Fix for ESP pages with 8-bit characters in scripts. (Thanks Michael Miller)
- Fix duplicate environment variables in simpleEgi sample. (Thanks Nick)
- Fix some build circular dependencies. (Thanks Nick)
- Fix incomplete requests not handling keep alive correctly.
- Don't close keep-alive connections for requests returning 304 (not modified) ]
- Fix mprStrCmpAnyCase routine.
- Fix Content-Length handling when the length is zero.
- Fix MaRequest:getCrackedCookie. Could corrupt memory.
- Fix when using ROMed web pages (BLD_FEATURE_ROMFS)
- Fix some visual studio project files that referenced libraries of the wrong build type.
Compatibility Changes
New Features in 1.1
Major Features
- PHP module for fast embedded execution of PHP applications and scripts
- First pass source code MACOSX port (Thanks Edward Dale http://www.scopmt.com)
- Greatly enhanced build system supporting granular selection of build features.
Minor Features
- Support full static linking with AppWeb libraries and building static versions.
- Add LoadModulePath directive to make it easier to maintain module paths
- Removed Matrix SSL handler. This is now being handled directly by PeerSec. Thanks guys. See (http://www.matrixssl.org)
- Speed up building on Windows with Cygwin
Fixes
- Fix for ESP pages with 8-bit characters in scripts. (Thanks Michael Miller)
- Fix duplicate environment variables in simpleEgi sample. (Thanks Nick)
- Fix some build circular dependencies. (Thanks Nick)
- Fix incomplete requests not handling keep alive correctly.
- Don't close keep-alive connections for requests returning 304 (not modified) ]
- Fix mprStrCmpAnyCase routine.
- Fix Content-Length handling when the length is zero.
Compatibility Changes
New Features in 1.0.4
Fixes
- Fix for URLs that have trailing "." or " " in Windows. Fix prevents
returning the page as pure text. This bug affected windows systems only
for handlers that are matching by extension. This typically means ESP
and PHP pages configured to match URLs by extension. If using URL
prefix matching, the bug does not appear.
- Fix the 'h' formatting option for the CustomLog directive. This outputs the remote host name in the access log.
- Security fix for Windows allowing access to secured URLs by mixing case. (Thanks Ziv Kamir)
- Fix for HEAD, and TRACE not being handled correctly by some handlers. (Thanks again Ziv)
- Security fix for user message disclosing too much information when denying access. (Ziv)
- Fix for VirtualHosts (including SSL virtual hosts) incorrectly parsing authorization configuration directives. (Ziv)
New Features in 1.0.3
Fixes
- Fix for digest handing on Windows. (Thanks lhearin)
- Fix for formatting of secure cookies.
- Enhance keep-alive for request errors.
- Remove the MatrixSSL handler (now supplied directly in the MatrixSSL distribution -- see http://www.matrixssl.org).
New Features in 1.0.2
Fixes
- Fixes
for Windows PHP handling. Define the SCRIPT_FILENAME environment
variable. NOTE: users must change the cgi_pathinfo setting in their
/WINDOWS/PHP.INI file to be set to "1". This instructs PHP to operate
according to the standards (Thanks Barry Drake).
- Fix for launching Firefox / Firebird by double-clicking on the Windows tray icon. (Thanks Kenny M.).
- Fix for bad DocumentIndex directive if occuring after the ScriptAlias directive for CGI files. (Thanks again Kenny).
- Several fixes for memory leaks when compiling Multithreaded. (Thanks Nicolas Ferre).
New Features in 1.0.1
Documentation
Fixes
- Test if a URL maps to a Windows device file. Fixes a crash condition on Windows NT, 9X and 2000.
- Fixed setting of Content-Length when the length of the content is not known. Changes to rq->setHeaderFlags
- Fix handling of poorly formed OPTIONS requests.
New Features in 1.0
Major Features
- Extensive push to test AppWeb to its limits with extreme load and long "soak" testing.
Minor Features
- Support
the Action directive to make it easier to configure CGI programs that
cannot use "#!/path" in the first line of the script.
- Fix and simplify configuration for CGI Perl, Python and PHP. New Action and AddType directives to the rescue.
- Test suite extended for CGI programs and for long POST data requests.
Performance
- Boost performance for Windows socket handling
- Boost performance for HTTP requests with long POST data.
Documentation
Fixes
- Fix a CGI multi-threaded bug where returning CGI data would interfere with subsequent Keep-Alive request data
- Fix MPR_FEATURE_MALLOC_HOOK when using the fast memory allocator
- Some fixes for Matrix SSL
- Disable log file rotation -- Security risk in current default configuration. (Can be re-enabled in source code)
- Fix a race condition with the socket handling code on Windows
New features in 0.9.1
Major Features
- Full support for Matrix SSL (small footprint embedded SSL)
- Cookie support
- Add setHeader API to allow handlers to define and override HTTP headers
Minor Features
- Add support for TRACE and OPTIONS HTTP methods
- Tighten handler checking to only respond to supported HTTP methods
- Allow
ESP pages to post back forms to themselves. Test on REQUEST_METHOD ==
"POST" to determine if the page is being displayed for the first time
or whether the form is being submitted. This eliminates the need for
EGI forms in many cases. One ESP page can be used to display and
process the data.
- Improved debug trace for httpClient and the appWeb servers.
- Improved unit test for CGI and
Documentation
Architecture
- Enhanced
post data handling. The postData handler method is now called after the
run method. It will be called as required to push post data to the
handler.
- Post data pull mode support. Handlers can request to pull the post data rather than having it pushed to them. The Request::setPullPost will enable pull mode. The Request::readPostData API can be called in the handler to pull the post data as required.
Fixes
- Fix error with poorly form HTTP headers in some cases.
- Fix attempting to start appWeb.exe when installing only the source code on Windows.
- Fix setResponseCode API to remove assert on non-200 response codes.
- Lots of minor fixes.
- Append to the access log on restarts.
Compatibility Changes
- The postData method and usage in the AppWeb handler interface has bee reworked.
New features in 0.9.0
General
- SSL is now supported "out of the box".
- GoAhead WebServer compatibility module (compatModule) now supported.
- C Language API and samples complete.
- Automatically launch browser after install to display documentation.
- Run as a windows service and automatically install as a service on Windows
Performance
- Shrink code on all platforms (Now from 120K to 300K).
- Compile without using exceptions -- further code size reduction.
- Performance gains. Throughput exceeds 3,500 requests per second (P4 2.4 GHZ running both client and server on Linux)
Documentation
- Documentation arrives !!
- Extensive overviews, guides, how-to documents, samples, references and APIs
- Samples are now divided into C and C++ samples with lots of extra samples including event loop integration samples.
- The installation now offers to install the documentation as a separate component.
- Documented C Language API.
- Documented C++ Language API.
- Lots more code comments.
Architecture
- New SSL Provider interface.
- Enhanced module loading interface.
Fixes
- Fix AppWeb not starting on system reboot on Linux.
- Fix build errors when compiling with various FEATURE combinations specified via bld.h and configure.
- Fixed issues with Visual Studio.NET upgrading Visual Studio 6 project files.
- Fix building source when installed stand-alone without the binary install.
- Fixed bug handling empty password and group authorization files.
- Fix windows link errors 4217, 4049
- Fix windows bug where aliases without drive specs were not handled correctly.
- Fix bug escaping and descaping URLs.
- Fix bug with windows event processing under heavy load where an event could get lost.
- Lots of minor fixes.
Compatibility Changes
- The module loading API has changed to allow modules to parse the configuration file.
- sslHandler has been renamed sslModule.
- The SSL provider interfaces has been rewritten.
New Features in Mbedthis AppWeb 0.8.1
Dynamic Content
- Embedded Server Pages
- Embedded JavaScript
- Embedded Gateway Interface (in-memory CGI)
- CGI/1.1
Security
- Secure Sockets Layer (SSL)
- Basic and Digest Authentication
- Directory and URL location based authorization
- Sandbox limits
- Access and access violation logging
Modularity
- Dynamic loading of modules
- Extensible URL handlers
- Extensible / replaceable authorization, SSL and script
Easy to Use
- Apache-style configuration file
- Debugging and trace logging
- Packaged installations for Linux and Windows
- Run as a service / daemon
Other Features
- HTTP server and client access program
- Named and IP based virtual hosts
- Listen on multiple ports
- Compile web pages and files into C code for execution from ROM
Standards
- HTTP/1.1
- CGI/1.1
- Apache configuration file compatibility
Performance
- Multithreaded with high performance thread pool
- Request throughput (> 3,500 requests per second)
- Scales on multi-cpu systems
- Small memory footprint even under heavy load (from 400K)
Developer Features
- HTTP server and client libraries
- Shared and static libraries supplied
- C and C++ APIs
- Operate single-threaded or multithreaded (Compile or run-time selectable)
- Easy, intuitive programming model
- Integrate with common event mechanism: Windows Messages, Unix select, dedicated thread
- Coding minimized as most features can be specified via the configuration file
- Cookbook of samples (cut and paste to get going)
- SMP safe
- Extensive debug trace logging
|
|