Installing, configuring and optimizing your web server has never been so easy.

By default a complete LEMP stack is built, but individual packages can be installed depending on your needs, for example, install just NGINX if you just need HTML sites.

Supported sites:

  • Simple HTML site
  • PHP sites
  • Native support for WordPress sites
  • Reverse Proxy sites
    • Use it to put Nginx in front of your app/site (Java, Node, Angular, React, Vue, Django, etc.)
    • Use your own domain to access external file repos like S3.
  • Parked sites or “alias”
  • Domain forwarding
  • Fully-Custom sites (using your very own custom Nginx configuration)

* Please, read the Quick Setup and Examples section below.

I- Server administration is a task that requires certain skills, knowledge and experience, although Webinoly makes it seem very simple, it is recommended that you consider a different solution if you are not prepared to deal with situations that may arise on your server and that are out of the scope of Webinoly.

II – WARNING: Managing your own server can be a headache if you don’t feel comfortable reading and understanding technical documentation made for developers and engineers. If Command-Line is not your thing, we highly recommend you to choose a different solution, there are several Managed-Hosting solutions available in the market that offer “Top-Notch” support for people that need it.

III – BE CAREFUL: Webinoly may not be suited for all users, even though we are focused on Business and Enterprise users, you can be sure that even the smallest site can be hosted safely running smoothly on a Webinoly server. Be aware, that some segments of users, early-adopters, and especially those that come from shared hosting environments will find some difficulties with some more mature features. Webinoly doesn’t have native support for WP Cache-Plugins (we use FastCGI instead), we don’t have multiple PHP users (Only useful for shared-servers, but commonly promoted by cheap VPS hostings) and we don’t have a web-dashboard (we have Datadog native integration). If you don’t feel comfortable with these features, you should NOT use Webinoly.

IV – If you’re a very enthusiastic WP user/dev with no experience as SysAdmin, you should probably NOT use Webinoly, unless you know what you’re doing.

V – Please, read our Frequently Asked Questions page before installing Webinoly.

Linux Distributions Supported by Webinoly

  • Ubuntu 24.04 and 22.04 (ARM and x86) * Bash Shell is required!

Ports Configuration

  • 22/TCP (Inbound/Outbound)
  • 25/TCP (Outbound)
  • 80/TCP (Inbound/Outbound)
  • 443/TCP (Inbound/Outbound)
  • 587/TCP (Outbound) *Optional for SMTP
  • 11371/TCP (Outbound) *GPG Keys
  • 22222/TCP (Inbound) *Admin area

* Read here: What kind of firewall do I need?

Use our affiliate link for Digital Ocean and get $200 of free credit for new users!

* Need help to decide which server is the good one for you? Here is a complete guide about how to choose the right server.

Quick Setup & Examples

Update and upgrade your Operating System is always recommended as first step: sudo apt update && sudo apt -y upgrade to prevent any risk with outdated packages when building your webserver stack.

Example #1 – Simple HTML site

# Webinoly NGINX Installation
wget -qO weby && sudo bash weby -nginx

# Create your site
sudo site -html

# Add an SSL Cert
sudo site -ssl=on

# Enable www-data user to upload and modify files via SFTP.
sudo webinoly -login-www-data=on

Example #2 – Any PHP site

# Webinoly NGINX and PHP Installation
wget -qO weby && sudo bash weby -php

# Create site
sudo site -php

# SSL Certificate (HTTPS) for your site
sudo site -ssl=on

# Enable www-data user to upload and modify files via SFTP.
sudo webinoly -login-www-data=on

Example #3 – WordPress site

# Webinoly LEMP Installation
wget -qO weby && sudo bash weby

# Create a WordPress site with FastCGI Cache
sudo site -wp -cache=on

# SSL Certificate (HTTPS) for your site
sudo site -ssl=on

# Visit and finish WP setup
# Webinoly protects WP login pages (wp-admin / wp-login), we need to create a user for HTTP Authentication.
sudo httpauth -add

# Enable www-data user to upload and modify files via SFTP.
sudo webinoly -login-www-data=on

Example #4 – Nginx in front of your (Java, Vue, React, Node, Angular, etc) app/site

# Webinoly NGINX Installation
wget -qO weby && sudo bash weby -nginx

# Create a Reverse Proxy site (Point your domain to your app)
sudo site -proxy=[localhost:8082]

# Add an SSL Cert
sudo site -ssl=on -root-path=/opt/app/web

Example #5 – Custom Configuration

# Webinoly Clean Installation
wget -qO weby && sudo bash weby -clean

# Change PHP version
sudo stack -php-ver=7.4

# Timezone
sudo webinoly -timezone

# Change any conf you want before building the stack
# Change Nginx branch to mainline
# Set MySQL as default instead of MariaDB.
# Change MariaDB version.
# Etc...
sudo nano /opt/webinoly/webinoly.conf

# Now build the stack using your Custom Configuration
# Here we're using the 'light' option to not install additional tools (only core packages)
# Let's Encrypt, Backups, Postfix, Redis, Memcached, phpMyAdmin, etc, will NOT be installed.
# Also, you can use the 'basic' option, or install individual tools according to your needs.
sudo stack -lemp -build=light

# Create a site
sudo site -php

…and that’s all! Really… it’s that simple!

That’s enough for most of the basic projects, of course, I invite you to read our very detailed documentation to see all the amazing customizations you can do in your server to build the most advanced configurations according to everyone needs, especially for those very big projects that require very specific tunings.

* You want more advanced examples? Read our Full Advanced Practical Tutorial.
** You want a complete course about Web Servers? Read our complete course on Introduction to Web Server Administration.

Signup for our Newsletter to be the first to know when an update is available!

Installation command

The installation command accepts some options to facilitate and automate its implementation.

wget -qO weby && sudo bash weby <option> <version>

Options to choose the necessary packages depending on the type of websites that we wish to host.

  • HTML (-nginx) – Only install Nginx, which will only support HTML sites.
  • PHP (-php) – Nginx and PHP will be installed.
  • LEMP (-lemp) – A complete LEMP installation will be done, Nginx + PHP + MySQL (MariaDB). This is the most complete and necessary configuration for WordPress sites. (Default)
  • Maybe later (-clean) – Webinoly is installed without installing any package, it allows you to do a manual and personalized installation with the command stack. (The most recommended for custom configuration)

Please, don’t use the default option (LEMP) if you plan to make custom changes to your server configuration, like changing the PHP version, or changing the database engine, etc. Use the “clean” option instead, as is shown in the example #5 above.


Complete LEMP installation:
wget -qO weby && sudo bash weby -lemp

Install an specific Webinoly version (v1.17.9 or newer):
wget -qO weby && sudo bash weby -lemp -ver=1.17.9

The installation of specific versions facilitates an appropriate change management process in automated environments, for example, where Webinoly is integrated. In these cases, it is critical to guarantee the stability of the system as a whole. Be sure to test each version before adopting it.

Previous versions may be obsolete or with limited features, so it is always recommended to keep your system updated with the latest and newest version of this application.

If you have any questions, suggestions, ideas, or comments, or if you (gasp!) found a bug, join us in the Discussions Area.