Nginx Server featured image

Nginx Server and Location Block Selection Algorithms: Overview

Introduction Nginx is among the world’s most popular web server options. It is able to successfully deal with a multitude of simultaneous client connections. At the same time, it is functioning as a mail, web, or reverse proxy server. This guide aims to outline the behind-the-scenes methods that direct how Nginx processes client requests. We will demystify the server and …

Iptables Firewall featured image

Configuring an Iptables Firewall: Basic Rules and Commands

Introduction Iptables​ is a command-line ​firewall ​utility. This means that it is software that allows you to configure a firewall on your system. It is typically available by default on ​Linux​ systems. In this guide, we will ​discuss some of the common rules and commands that go with the iptables​ firewall. Whenever a connection tries to establish itself with your …

Grep featured image

Using Grep and Regex to Search Text Patterns

The grep command is a powerful utility to search for patterns in text. It comes pre-installed in any Linux distro. Here is our tutorial that goes over setting up the LAMP Stack -Linux, Apache, MySQL, and PHP. The name grep stands for global regular expression print. The tool searches for the specified pattern in the input. In principle, it sounds …

service crash part 2 featured image

How to Configure a Linux Service to Auto-Start After a Reboot or System Crash: Part 2 (Theoretical Explanations)

In this second installment of the two-part tutorial on configuring Linux services to start automatically after a reboot or system crash, we will discuss the init system in detail. You can refer to Part 1 of the series: How to Configure a Linux Service to Auto-Start After a Reboot or System Crash: Practical Examples here. The current tutorial will be …

System Crash featured image

How to Configure a Linux Service to Auto-Start After a Reboot or System Crash: Part 1 (Practical Examples)

Introduction In computing, things don’t always go as planned. Oftentimes unexpected system crashes prompt system admins to initiate reboots and restart of individual services. Figuring out and restarting every service your application needs to run after a system crash or reboot can be tedious. In this first installment of the two-part tutorial, we will show you how to configure services …

Relational Database Management Systems Compared featured image

SQLite vs MySQL vs. PostgreSQL: Relational Database Management Systems Compared

Introduction Database management tools are mostly used by the relational data model. This model organizes data into tables consisting of columns and rows. While this model remains dominant in terms of storing and managing worldwide data, there are other data models such as NoSQL and NewSQL out there. In this tutorial we will delve into three of the most widely …

Installing and Setting up Docker on CentOS 7

Introduction Docker is a platform that makes running and managing application processes in containers easier. It provides a way to separate your applications from your infrastructure. Containers are very similar to virtual machines, but they are more portable, efficient, and easy to use. There are various ways to install Docker on Linux distributions. The most popular and easy way to …

Apache Web Server featured image

Configuring the Apache Web Server on an Ubuntu or Debian VPS

Introduction Apache is currently the most widely used web server in the world. It is an open-source software developed over twenty years ago and maintained by the Apache Software Foundation. As of September 2020, it is estimated to be serving 35% of all website traffic in the world. Developers prefer Apache for its speed, security, reliability, robustness, and ease of …

Server Setup

Setting up Your Application: How to Choose the Best Server Setup?

Introduction Technology and the internet have become central presences in our regular, academic, and professional lives. That is why the sheer number of websites and applications that exist concurrently does not come as a surprise. If you are a business, you would want to have an associated web platform. An application enables you to market and deliver your services to …

Sudoers File featured image

Configuring the Linux Sudoers File

Introduction Do you ever wonder why you must type “sudo” while trying to execute certain commands in a Linux or Unix Operating System environment? Sudo is actually an abbreviation, standing for “super-user do”. When you use the sudo command, you can run programs and execute commands with the security privileges of another user. By default, the sudo command allows system …

setting up python featured image

Installing Python 3 and Setting up a Local Programming Environment on Ubuntu 16.04

Introduction Python is an interactive, object-oriented, and simple programming language which can be used for a plethora of different programming projects. A fun fact is that Python is not named after the python snake but after the comedy television show Monty Python’s Flying Circus. Python is a great language to get started with programming and a great choice for experienced …

Laravel featured image

Deploying Laravel, Nginx, and MySQL with Docker Compose

Introduction Continuous Integration (CI) and Continuous Deployment (CD) are some of the most trending topics in software development currently. To achieve the CI/CD aspect of software architecture, developers make use of containers. Containers are lightweight, virtualized, portable, software-defined environments. In containers, the software can run in isolation of other software running on the physical host machine. The focus of this …