Installation

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

Supported site types:

  • 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)
  • Architecture: arm64 / x86_64 (amd64)
  • RAM Minimum: 512 MB

* Bash Shell is required.

Firewall

Port 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 requires specific skills, knowledge, and experience. While Webinoly simplifies the process, we recommend considering alternative solutions if you’re not prepared to handle potential server issues beyond 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 choosing the right server? Explore our complete guide to server selection and learn how to match your infrastructure to your project’s needs—whether you’re scaling a WordPress site, deploying a PHP app, or managing high-traffic environments.

Quick Setup & Examples

Before installing your web server stack, it’s strongly recommended to update and upgrade your operating system to ensure stability and security: sudo apt update && sudo apt -y upgrade.

Outdated packages can introduce compatibility issues, security vulnerabilities, and unexpected behavior during setup. Starting with a clean, up-to-date system helps avoid these risks and ensures a smoother installation process.

Example 1: 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: 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

# 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.
# Make sure to use strong credentials and keep them secure.
sudo httpauth -add

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

Example 4: Reverse Proxy

Nginx in front of your app/site: Java, Vue, React, Node, Angular, etc.

# 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!

Perfect for Basic Projects—Powerful Enough for the Most Demanding Ones. Webinoly provides everything you need to launch and manage standard web projects with ease. For advanced use cases, our comprehensive documentation details the full range of customizations available—allowing you to fine-tune your server for complex environments, high-traffic applications, and specialized configurations.

Looking for More Depth? Explore advanced use cases and real-world scenarios in our Full Advanced Practical Tutorial.
Want a structured learning path? Dive into our Complete Course on Web Server Administration to master NGINX, LEMP stacks, and server management from the ground up.

Installation Options for Streamlined Deployment

The installation command supports multiple options to simplify and automate setup according to your project’s requirements.

wget -qO weby qrok.es/wy && sudo bash weby <option> <version>

You can specify which components to install—and even define the exact version to ensure consistency across environments.

OptionPackages installedIdeal for
-nginxNginx onlyStatic HTML
-phpNginx + PHPDynamic PHP sites
-lempNginx + PHP + MariaDB/MySQLWordPress and full-stack use
-cleanNo packages (manual setup)Custom configuration
* Default is LEMP, but individual packages can be installed, for example, install just NGINX if you just need HTML sites.

Recommendation

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.

Version Control & Stability in Automated Environments – Installing specific versions of Webinoly and its components supports effective change management—especially in automated or scripted deployments. This approach helps ensure system-wide stability and predictability across environments. Before adopting any version, it is strongly recommended to test it thoroughly to validate compatibility and performance under your specific conditions.

Example

# Install Nginx only:
wget -qO weby qrok.es/wy && sudo bash weby -nginx

# Custom Webinoly version (v1.17.9 or newer):
wget -qO weby qrok.es/wy && sudo bash weby -lemp -ver=1.17.9

Version Compatibility NoticeOlder versions of Webinoly may be deprecated or lack critical features and security updates. To ensure optimal performance, compatibility, and access to the latest improvements, it is strongly recommended to keep your system updated with the most recent stable release of Webinoly.


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