Web server test in C++ using restinio
sudo su
apt update && \
apt upgrade -y && \
DEBIAN_FRONTEND=noninteractive apt install -y curl libicu-dev git-all \
gcc g++ flex bison make autoconf automake libtool autotools-dev \
libevent-dev zlib1g-dev pkg-config libssl-dev libsnappy-dev libbz2-dev \
liblz4-dev libzstd-dev net-tools tree graphviz texlive-latex-base \
dumpasn1 ruby-full ruby-dev ruby-rspec rake rubygems bundler
sudo su
curl -LO https://cmake.org/files/LatestRelease/cmake-3.15.0.tar.gz && \
tar -xzf cmake-3.15.0.tar.gz && \
cd cmake-3.15.0 && \
./bootstrap --prefix=/usr/local && \
make -j$(nproc) && \
sudo make install && \
cd .. && \
rm -rf cmake-3.15.0.tar.gz ./cmake-3.15.0
sudo su
curl -LO https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2 && \
tar -xjf boost_1_71_0.tar.bz2 && \
cd boost_1_71_0 && \
./bootstrap.sh --prefix=/usr/local && \
user_configFile=`find $PWD -name user-config.jam` && \
echo "using mpi;" >> $user_configFile && \
./b2 -q -j$(nproc) install && \
cd .. && \
rm -rf boost_1_71_0.tar.bz2 ./boost_1_71_0
Restinio is a header-only C++14 library that gives you an embedded HTTP server with nice express-like routing (although it is not mandatory to use router) and websockets on board. It is targeted primarily for asynchronous processing of HTTP-requests.
$ git clone https://github.com/Stiffstream/restinio.git
$ sudo gem install Mxx_ru
$ cd restinio
$ mxxruexternals
$ cd dev
$ mkdir build
$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release ..
$ sudo cmake --build . --config Release --target install
$
Technical support is available in
If you want to contribute:
- Review the Contribution License Agreement 1.1. Defines the terms under which intellectual property is contributed to a project 1.2. To ensure the owner of the project has the necessary ownership, or grants of rights over contributions made by third parties. 1.3. Must be signed by any contributor to a project who is making a "significant contribution". 1.4. Without that signed CLA the contribution will not be accepted.
- Check the project issues list
- Fork the repository
- Submit your contribution as a pull request
- Create/update an issue
- A committer approves the proposal
Making a copy of the project's code Make your code changes Keep your changes concise and easy for the maintainers to understand Refer back to any discussion you had on the projects issues list Stick to the scope of the issue Make sure to fully test your code Make sure to include any required documentation Remember your contributions represent your public reputation and that of DXC
- Request review
- Create a contribution request (Pull Request) which include:
- Your code changes
- A commit message describing what you're submitting
- A reference to the original issue you created/updated in step 1
See LICENSE file