Self Web Hosting At Home In Ubuntu Linux
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.80 GB | Duration: 3h 0m
Published 1/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.80 GB | Duration: 3h 0m
Host your own website at home in a weekend
What you'll learn
Get to speed using Ubuntu Operating System
Set up and manage a web server - apache
Set up and manage database servers - MySQL and PostgreSQL
Install and configure phpMyAdmin and phpPgAdmin
Set up and Configure FTP servers - FileZilla and VSFTPD
Set up and configure the samba file server
Add web programming capabilities to apache server using PHP and Python
Set up a WSGI server to run Flask application
Set up server to be accessed outside LAN using public IP address and Domain name
configure server for remote administration using SSH or RDP
Perform data backup and restoring data from backup snapshot
Requirements
A Computer to run the tasks
Internet connection
No prior Linux skills or experience needed
Description
This course is a step-by-step guide for hosting your own website both for beginners and intermediate users as well. By the end of the last section the student will be able to set up a basic web server in apache and set it to be accessed externally, outside their home network using the public IP address or a domain that they will register for free. For simplicity this course uses the Ubuntu desktop version to accomplish all the tasks. Behind the scenes, the desktop and server versions of the Ubuntu operating system uses the same kernel and so nothing changes except that the former has a GUI and the latter a command line interface. This will help beginners understand the concepts easily and make their learning curve smooth.The student will learn how to transfer files from the development machine to the web server using FTP and File server applications. FileZilla and VSFTPD are FTP applications of choice used in this course. At the same time the samba file server is also used to implement file transfer. More so, you will be able to use the file server as your own custom implementation of Google drive, Microsoft OneDrive or Dropbox.Implementation of programming logic to the web server is also discussed in-depth and students will practically learn how to add PHP and WSGI modules so that they can be processed by the web server to run python and PHP scripts. Students will see how to set up a flask framework in Python as well. All these concepts are well explained, and the student is guided on what to do in every step; and enabled to use their favorite scripting language to run their web application. Database concepts are also discussed in depth. The student will set up MySQL and PostgreSQL database servers and install the web admin interfaces as well, such as phpMyAdmin and phpPgAdmin for MySQL and PostgreSQL respectively.Students will also practically see how to do remote administration of their server using SSH and RDP. The SSH will connect via the command line in terminal and RDP using windows remote desktop.The course ends with a discussion and practical examples on data backup. Students shall see how to perform system backup and regular file backup and how to restore in the case of data loss.
Overview
Section 1: Introduction
Lecture 1 Introduction
Lecture 2 Course Requirements
Section 2: Preparing Server Environment
Lecture 3 Introduction
Lecture 4 Installing server Operating system
Lecture 5 Quick server desktop tour
Lecture 6 Configuring Server Network
Lecture 7 Updating your Server
Section 3: Working With Web Servers
Lecture 8 Introduction
Lecture 9 Installing Apache web server
Lecture 10 Basic Apache Commands
Lecture 11 Installing Nginx
Section 4: Uploading Content Remotely
Lecture 12 Introduction
Lecture 13 setting up samba
Lecture 14 setting up VSFTPD
Lecture 15 Setting up Filezilla
Section 5: Web Programming
Lecture 16 Introduction
Lecture 17 Installing PHP
Lecture 18 Installing and configuring Python
Lecture 19 Installing Python virtual environment
Lecture 20 Python Flask Setup
Lecture 21 Installing WSGI server
Section 6: Working with Databases
Lecture 22 Introduction
Lecture 23 installing mysql
Lecture 24 installing and configuring phpMyAdmin
Lecture 25 installing postgresql
Lecture 26 installing and configuring phpPgAdmin
Lecture 27 consuming mysql in PHP
Section 7: Accessing Your Website Externally
Lecture 28 Introduction
Lecture 29 Accessing using Public IP address
Lecture 30 Accessing using Domain name
Section 8: Administering your Server Remotely
Lecture 31 Introduction
Lecture 32 Setting Up Remote Desktop Connection
Lecture 33 Access Remote Desktop using linux client
Lecture 34 Access Remote Desktop using windows client
Lecture 35 Installing SSH
Lecture 36 set up secure SSH client
Section 9: Data Backup
Lecture 37 Introduction
Lecture 38 Setting Up Deja Dup backup
Lecture 39 Restoring data using Deja dup
Lecture 40 Setting and system backup using timeshift
Lecture 41 Restoring system using timeshift
All beginners and seasoned linux users.,Web developers who want to self-host their web applications,Anyone who wants to learn how web servers are set up and work