openresty README

The project's README from github.com/openresty/openresty. As one markdown file: README.md.

Name

OpenResty - Turning Nginx into a Full-Fledged Scriptable Web Platform

Table of Contents

Description

OpenResty is a full-fledged web application server by bundling the standard nginx core, lots of 3rd-party nginx modules, as well as most of their external dependencies.

This bundle is maintained by Yichun Zhang (agentzh).

Because most of the nginx modules are developed by the bundle maintainers, it can ensure that all these modules are played well together.

The bundled software components are copyrighted by the respective copyright holders.

The homepage for this project is on openresty.org.

For Users

Visit the download page on the openresty.org web site to download the latest bundle tarball, and follow the installation instructions in the installation page.

For Bundle Maintainers

The bundle's source is at the following git repository:

https://github.com/openresty/openresty

To reproduce the bundle tarball, just do

make

at the top of the bundle source tree.

Please note that you may need to install some extra dependencies, like perl, dos2unix, and mercurial. On Fedora 22, for example, installing the dependencies is as simple as running the following commands:

sudo dnf install perl dos2unix mercurial

Back to TOC

Additional Features

In additional to the standard nginx core features, this bundle also supports the following:

Back to TOC

resolv.conf parsing

syntax: resolver address ... [valid=time] [ipv6=on|off] [local=on|off|path]

default: -

context: http, stream, server, location

Similar to the resolver directive in standard nginx core with additional support for parsing additional resolvers from the resolv.conf file format.

When local=on, the standard path of /etc/resolv.conf will be used. You may also specify arbitrary path to be used for parsing, for example: local=/tmp/test.conf.

When local=off, parsing will be disabled (this is the default).

This feature is not available on Windows platforms.

Back to TOC

Mailing List

You're very welcome to join the English OpenResty mailing list hosted on Google Groups:

https://groups.google.com/group/openresty-en

The Chinese mailing list is here:

https://groups.google.com/group/openresty

Back to TOC

Report Bugs

You're very welcome to report issues on GitHub:

https://github.com/openresty/openresty/issues

Back to TOC

Copyright & License

The bundle itself is licensed under the 2-clause BSD license.

Copyright (c) 2011-2019, Yichun "agentzh" Zhang (章亦春) [email protected], OpenResty Inc.

This module is licensed under the terms of the BSD license.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Back to TOC

openresty (openresty/openresty)

Searching Database…

14.1K ·GitHub
What is this?OpenResty is a full-fledged web application server: it bundles the standard nginx core, lots of 3rd-party nginx modules, and most of their external dependencies into one package.
How is it different from just installing nginx myself?Most of the bundled modules are developed by the same maintainers, so they are ensured to play well together — you get one coherent platform instead of assembling nginx pieces yourself.
How do I get it up and running?Download the latest bundle tarball from the download page on openresty.org and follow the instructions on the installation page.
Will I need to install anything else first?Nothing extra is called out for the regular tarball install. Only if you reproduce the tarball from the git source yourself may you need perl, dos2unix, and mercurial — on Fedora 22 that is just a few install commands.
Does everything work the same on every OS?It builds and runs on Linux, macOS, and Windows (the repo has CI builds for all three), but not everything is equal everywhere: the resolv.conf parsing feature is explicitly not available on Windows platforms.
Anything to know about the license?The bundle itself is under the 2-clause BSD license, while the bundled third-party components keep the copyrights of their respective holders.
What does the bundle add beyond the standard nginx core?Its own features — for example an enhanced resolver directive that picks up additional DNS resolvers from a resolv.conf file: local=on reads /etc/resolv.conf, or you can point it at any arbitrary path.
Where does LuaJIT fit in?OpenResty is billed as a high-performance web platform based on Nginx and LuaJIT — LuaJIT is what makes the bundled nginx scriptable, hence the title 'Turning Nginx into a Full-Fledged Scriptable Web Platform'.
Is the project still actively maintained?Yes — it has been on GitHub since 2010, counts around 14,000 stars, and its CI builds and checks the bundle for Linux, macOS, and Windows.
What would I actually build with it?Web apps and APIs that run right inside the server: the README calls it a full-fledged web application server, so request logic is scripted on the platform itself instead of living in a separate backend.
Creator
openresty
Size
3 MB
Stars
14.1K
Age
16y
Commits · 90 Days