mirror von https://github.com/civetweb/civetweb.git

bel 016535194f Release V1.8 há 9 anos atrás
Qt 8e536227a4 Enable IPV6 and WEBSOCKET in Qt build há 9 anos atrás
VisualStudio ba0c6cc690 Remove superseeded examples há 9 anos atrás
ci bfba8d105d move travis tests to ci/ from test/ci_tests há 10 anos atrás
cmake b6275c0116 Update libcheck to 0.10.0, and add a patch for osx há 9 anos atrás
contrib 8a71399f0a Update version number and repository link for buildroot há 10 anos atrás
distribution 25e7595b8f Update repository link: bel2125/civetweb --> civetweb/civetweb há 10 anos atrás
docs a14ccc4313 Update documentation há 9 anos atrás
examples ba0c6cc690 Remove superseeded examples há 9 anos atrás
include 0475d20f68 Use long long instead of int64_t in the public interface for consistency há 9 anos atrás
resources f36619570a Add a helper script to test MinGW builds locally (to help debugging the build server) há 9 anos atrás
src aa72df0348 Improve handle_form unit test há 9 anos atrás
test 30cf20fd4f More unit tests há 9 anos atrás
.clang-format 8d901773ca Modify clang-format according to #207 (see comment) há 9 anos atrás
.gitattributes 54a13d3c2b Add manual language settings for github syntax highlighting há 9 anos atrás
.gitignore 3f9a19e7a9 Ignore cscope and ctags 'database' files há 9 anos atrás
.travis.yml 500e8ff36a Try to correct build scripts há 9 anos atrás
CMakeLists.txt 91509aaf26 Merge pull request #298 from c-mauderer/no-timegm há 9 anos atrás
CREDITS.md fbc48e4f73 Update credits há 9 anos atrás
LICENSE.md 72204bdc0f Experimental support for duktape (Step 2/?) há 9 anos atrás
Makefile e7c28c2c42 Change to option for building without caching. há 9 anos atrás
Makefile.deprecated 173b0c7214 Update Lua to 5.2.3 há 11 anos atrás
Makefile.osx f2820b50ca Fix OS X dmg build há 9 anos atrás
README.md ffb8b4cf13 The AppVeyor build for CivetWeb works now há 9 anos atrás
RELEASE_NOTES.md 016535194f Release V1.8 há 9 anos atrás
appveyor.yml a34dab5649 Change nothing again - see how it affects the AppVeyor build há 9 anos atrás
build 17532cb843 Build script for Unix systems há 10 anos atrás
build.cmd 1a04ebe805 Fix up log_append in MinGW download script há 10 anos atrás
format.bat ff73f34ca6 Alternative to mg_upload (Step 5/?) há 9 anos atrás
mingw.cmd 668cd8a5a9 Add powershell output to MinGW script log há 10 anos atrás

README.md

CivetWeb CivetWeb

The official home of CivetWeb is https://github.com/civetweb/civetweb

Continuous integration for Linux and OSX (Travis CI):

Travis Build Status

Continuous integration for Windows (AppVeyor):

Appveyor Build Status

Test coverage check (coveralls) (currently in a setup phase):

Coverage Status

Static source code analysis (Coverity):

Coverity Scan Build Status

Project Mission

Project mission is to provide easy to use, powerful, C/C++ embeddable web server with optional CGI, SSL and Lua support. CivetWeb has a MIT license so you can innovate without restrictions.

CivetWeb can be used by developers as a library, to add web server functionality to an existing application. It can also be used by end users as a stand-alone web server. It is available as single executable, no installation is required.

Where to find the official version?

End users can download CivetWeb at SourceForge https://sourceforge.net/projects/civetweb/

Developers can contribute to CivetWeb via GitHub https://github.com/civetweb/civetweb

Trouble tickets should be filed on GitHub https://github.com/civetweb/civetweb/issues

Discussion/support group and announcements are at Google Groups https://groups.google.com/d/forum/civetweb

Quick start documentation

Overview

CivetWeb keeps the balance between functionality and simplicity by a carefully selected list of features:

  • Liberal, commercial-friendly, permissive, MIT license
  • Free from copy-left licenses, like GPL, because you should innovate without restrictions.
  • Forked from Mongoose in 2013, before it changed the licence from MIT to commercial + GPL. A lot of enchancements have been added since that time, see RELEASE_NOTES.md.
  • Works on Windows, Mac, Linux, UNIX, iPhone, Android, Buildroot, and many other platforms.
  • Scripting and database support (Lua scipts, Lua Server Pages, CGI + SQLite database, Server side javascript). This provides a ready to go, powerful web development platform in a one single-click executable with no dependencies.
  • Support for CGI, HTTPS (SSL/TLS), SSI, HTTP digest (MD5) authorization, Websocket, WEbDAV.
  • Optional support for authentication using client side X.509 certificates.
  • Resumed download, URL rewrite, file blacklist, IP-based ACL, Windows service.
  • Download speed limit based on client subnet or URI pattern.
  • Simple and clean embedding API.
  • The source is in single file to make things easy.
  • Embedding examples included.
  • HTTP client capable of sending arbitrary HTTP/HTTPS requests.
  • Websocket client functionality available (WS/WSS).

Optionally included software

Lua Sqlite3 LuaFileSystem LuaSQLite3 LuaXML Duktape

Support

This project is very easy to install and use. Please read the documentation and have a look at the examples. More information may be found on the mailing list.

Contributions

Contributions are welcome provided all contributions carry the MIT license.

DO NOT APPLY fixes copied from Mongoose to this project to prevent GPL tainting. Since 2013 CivetWeb and Mongoose are developed independently. By now the code base differs, so patches cannot be safely transfered in either direction.

Some guidelines can be found in docs/Contribution.md.

Authors

CivetWeb is based on the Mongoose project. The original author of Mongoose was Sergey Lyubka (Copyright (c) 2004-2013 Sergey Lyubka, MIT license).

However, in August 16, 2013, the license of Mongoose has been changed after writing and distributing the original code this project is based on. The license change used to be described on the Mongoose Wikipedia page as well, but it's getting deleted there regularly.

CivetWeb has been forked from the last MIT version of Mongoose. Since 2013, CivetWeb has seen many improvements from various authors (Copyright (c) 2013-2016 the CivetWeb developers, MIT license). A list of authors can be found in CREDITS.md.

Using the CivetWeb project ensures the MIT licenses terms are applied and GPL cannot be imposed on any of this code as long as it is sourced from here. This code will remain free with the MIT license protection.