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

bel2125 8abf1817e1 Update credits 7 jaren geleden
Qt ea8eb4abd8 Prepare data for server status (Step 7/?) (See #243) 8 jaren geleden
VisualStudio ececaa7139 Enable server statistics in windows standalone build 8 jaren geleden
ci 62ab890593 Fix bash path in shebangs 8 jaren geleden
cmake 5d765b4984 Try Travis CI fix for OSX 8 jaren geleden
contrib 269e3f5625 Update version number 8 jaren geleden
distribution 25e7595b8f Update repository link: bel2125/civetweb --> civetweb/civetweb 10 jaren geleden
docs 88e52bc32a Update contribution guidelines 7 jaren geleden
examples 8ab8f3d8bf Fix copy paste error in example 8 jaren geleden
include b06c3f90da Rename parameter "domain" to "realm", to use the same parameter names 7 jaren geleden
resources 698303af84 Makefile should create all required directories 8 jaren geleden
src ac55fc0250 Fix copy/paste error in Lua reg_llstring 7 jaren geleden
test 9ec3c463f5 Fix handle_form for quoted strings and reactivate unit test 7 jaren geleden
.clang-format 8d901773ca Modify clang-format according to #207 (see comment) 9 jaren geleden
.gitattributes 54a13d3c2b Add manual language settings for github syntax highlighting 9 jaren geleden
.gitignore 4585d808a1 Fix build embedded_cpp.cpp 8 jaren geleden
.travis.yml 0654695c9e Test integration for codecov 7 jaren geleden
CMakeLists.txt 2462470e35 Allow disabling executable install. 7 jaren geleden
CREDITS.md 8abf1817e1 Update credits 7 jaren geleden
LICENSE.md 939d833efb Update year in LICENSE.md 8 jaren geleden
Makefile 698303af84 Makefile should create all required directories 8 jaren geleden
Makefile.deprecated 173b0c7214 Update Lua to 5.2.3 11 jaren geleden
Makefile.osx 9ba511faed Change OS X package from dmg to zip file to fix hdiutil errors in Travis 9 jaren geleden
README.md ebc69d7e7d Update README and RELEASE_NOTES 8 jaren geleden
RELEASE_NOTES.md ebc69d7e7d Update README and RELEASE_NOTES 8 jaren geleden
_config.yml 3265044de0 Set theme jekyll-theme-tactile 8 jaren geleden
appveyor.yml b7efd70960 AppVeyor: Build only one debug configuration, deploy only release 8 jaren geleden
build 17532cb843 Build script for Unix systems 10 jaren geleden
build.cmd 1a04ebe805 Fix up log_append in MinGW download script 10 jaren geleden
format.bat 13c406cb5f Restore file permissions in git 8 jaren geleden
mingw.cmd 668cd8a5a9 Add powershell output to MinGW script log 10 jaren geleden

README.md

CivetWeb CivetWeb

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

License GitHub contributors

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):

[Coveralls]() 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 releases 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

Source releases can be found on GitHub https://github.com/civetweb/civetweb/releases

A very brief overview can be found on GitHub Pages http://civetweb.github.io/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 and CivetWeb used to be mentioned on the Mongoose Wikipedia page as well, but it's getting deleted (and added again) there every now and then.

CivetWeb has been forked from the last MIT version of Mongoose. Since 2013, CivetWeb has seen many improvements from various authors (Copyright (c) 2013-2017 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.