Installation

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

Supported sites:

  • HTML
  • PHP
  • WordPress
  • Reverse Proxy
    • Nginx in front of your app/site (Java, Node, Angular, React, Vue, Django, etc.)
    • Your own domain to access external file repos like S3.
  • Parked or “alias”
  • Domain forwarding
  • Fully-Custom sites (Custom Nginx Configuration)

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

Webinoly Nginx stack

Requirements

  • Operating System: Ubuntu Server
  • Version: 24.04 / 22.04 (LTS Standard)
  • Arquitecture: ARM / x86
  • RAM Minimum: 512Mb

* Bash Shell is required.

Firewall: Ports Configuration

  • 22/TCP (Inbound/Outbound)
  • 25/TCP (Outbound)
  • 80/TCP (Inbound/Outbound)
  • 443/TCP (Inbound/Outbound)
  • 443/UDP (Inbound/Outbound)
  • 587/TCP (Outbound)
  • 11371/TCP (Outbound)
  • 22222/TCP (Inbound)

* Read: What kind of firewall do I need?

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 this project.

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

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 qrok.es/wy && sudo bash weby -nginx

# Create your site
sudo site example.com -html

# Add an SSL Cert
sudo site example.com -ssl=on

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

Example #2 – Any PHP site

# Webinoly NGINX and PHP Installation
wget -qO weby qrok.es/wy && sudo bash weby -php

# Create site
sudo site example.com -php

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

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

Example #3 – WordPress site

# Webinoly LEMP Installation
wget -qO weby qrok.es/wy && sudo bash weby

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

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

# Visit https://example.com 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 -sftp=on

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

# Webinoly NGINX Installation
wget -qO weby qrok.es/wy && sudo bash weby -nginx

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

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

Example #5 – Custom Configuration

# Webinoly Clean Installation
wget -qO weby qrok.es/wy && 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 example.com -php

…and that’s it! 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.

Installation command

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

wget -qO weby qrok.es/wy && 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 + MariaDB or MySQL. 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.

** 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.

Example:

Only Nginx installation:
wget -qO weby qrok.es/wy && sudo bash weby -nginx

Install an specific Webinoly version (v1.17.9 or newer):
wget -qO weby qrok.es/wy && 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.

×