
Explore how the internet uses a global network of cables to move data packets with headers, payloads, and trailers, and learn about IP addresses, bandwidth, latency, and core protocols.
Explore how the http protocol enables browsers to communicate with web servers, send get requests, and receive data packets, while DNS translates addresses to IPs and HTML structures pages.
Explore how https secures data by encrypting web traffic with ssl or tls, perform the ssl handshake, and validate domain certificates to protect personal information.
Explain the smtp protocol and its role in local and external email delivery. Describe how smtp servers handle header information and storage, with references to pop3 client retrieval.
Locate the recipient's mail server with the SMP server to complete outbound mail delivery. Pass the message through spam filters and store it for retrieval via pop3 or imap.
Explore how local area networks use modems and routers to share a single connection, assign local IPs, and route data packets within a LAN and to the wider Internet.
Learn how routers improve local area network security by controlling data packets through open or closed ports, and compare hardware and software firewalls protecting ports 80, 25, and 21.
Overview of the end-to-end web development process, from planning domain setup to deployment, DNS configuration, and front-end work with HTML, CSS, Bootstrap, JavaScript, and jQuery, plus MySQL with PHPMyAdmin.
Plan the flow of your web site by establishing its purpose and choosing between static and dynamic designs. Map navigation with a flowchart, outlining home, about us, listings, blog, contact.
Assess hosting needs for testing and live production, including public access, resources, and scalability; compare traditional and cloud hosting and consider home server options with proper security.
Explore how shared hosting allocates resources such as 2 gb RAM, 512 gb storage, and 5 tb bandwidth, and compare Linux vs Windows plans for PHP and MySQL.
Dedicated hosting provides exclusive server resources and greater power at a higher cost. It offers absolute control over server configuration and hardware upgrades, stored remotely, with administration fees.
Explore virtual private hosting (VPS) and how it allocates more resources and bandwidth than shared hosting, with scalable plans yet limited by hardware and less flexible than dedicated hosting.
Explore how cloud hosting delivers scalable, cost-efficient web hosting by pooling resources from data centers to support virtual machines, pay-as-you-go pricing, and on-demand scaling, contrasted with traditional hosting.
Registering a domain name creates a unique web address and strengthens branding, using registrars and registries to check availability and manage top-level domains like dot com, dot net, and dot org.
Choose a reputable registrar offering domain monitoring, enforcement security, and trademarking, with an intuitive online portal to protect and grow your web brand.
Register and administer a domain name by checking availability on GoDaddy or another registrar; note premium prices, view extensions like .com, .net, and .org, and add to cart before checkout.
Understand how domain privacy shields ownership by concealing WHOIS details. Explore selecting terms, enabling privacy, and setting up cloud hosting and a personalized Gmail for work.
Sign in to Go Daddy to access your domains and view expiration dates and registration type. Manage DNS, renew, or delete domains from the domain details page.
Enable auto renew to prevent domain expiration and resale, and monitor expiration dates. Keep domain lock on to safeguard transfers and use the emailed authorization code for transfers.
Forward domains and subdomains to other sites with permanent or temporary redirects, update DNS and name servers, and apply forwarding to specific URLs.
Learn how name servers, also known as NSA records, direct your domain to the server and how dns zone file lists name servers, web server IP, and mail delivery.
Update your domain registration information by navigating to the contacts tab, clicking manage under the privacy heading, removing privacy, and revealing the registrant, administrative, technical, and billing contacts.
Set up a local testing server on Windows or Mac to preview web projects before production, catching bugs early with Apache, MySQL, and php, and client-side html, css, and javascript.
Install the WampServer on Windows by selecting the correct 32-bit or 64-bit web server, resolving common Visual C++ runtime errors, and completing setup with a default browser and desktop icons.
Install MAMP on macOS, choose the standard installation, and start Apache. Access localhost:8888 to view the default MAMP page and test database connections using root as username and password.
Learn to install and run WampServer, manage Apache, PHP, and MySQL services, diagnose port conflicts with Skype, and use phpMyAdmin and the Wamp root directory to test web pages.
Place two PHP files in your web root to verify Apache and related services are running. Open localhost to view hello world from test.php and confirm the server with connect.php.
Set up production hosting by transferring your site to a cloud provider, enabling scalable, reliable hosting with Amazon Web Services or Google Cloud Platform.
Register and configure a live production server on a pay-as-you-go cloud hosting platform using the node service, where virtual servers are LA nodes.
Create and configure a virtual server by adding a LAN node, choosing a location and plan, and using the assigned IP for administration and page preview on the dashboard.
From the dashboard, rename your Linode node to keep it organized. Enable the shutdown watchdog to restart after power loss and tailor email alerts, including 90% cpu usage notifications.
Attach a disk, select Ubuntu 14.04 LTS as the image, configure a single disk with swap, set a secure root password, and click deploy to monitor deployment status.
Explore the linode dashboard to manage configuration profiles, disks, storage, and bandwidth, boot and reboot servers, monitor status and graphs, and understand hourly billing.
Master remote access to a server by logging in as root, using ipv4/ipv6, default gateway, and dns for name resolution; explore private node LANs and web-based consoles.
Download and run PuTTY and PuTTYgen on Windows to administer the node server. Save the two executables from PuTTY.org on your desktop for quick access.
Open the Mac terminal from Finder, Applications, Utilities to establish a connection to a remote server. Close the terminal to terminate the session.
Learn how command lines empower remote Ubuntu server administration across Mac, Windows, and Linux, enabling browsing folders, copying, editing files, and setting up remote desktop to view Ubuntu.
Learn to connect to a live node virtual server using PuTTY on Windows by entering the IP address, saving the connection, and logging in as root with the configured password.
Learn to connect to your node virtual server from Mac terminal using SSH, locate the IP address, log in with your username and password, and verify you are logged in.
Keep your server secure and up to date by running essential maintenance commands, including periodic apt-get update to compile the list of updates and apt-get upgrade to install them.
Explore file and directory commands, using pwd to show the present working directory, ls to list files, cd to root, var, or home, and reset to clear the console.
Install the LAMP stack on your server, configuring Linux, Apache, MySQL, and PHP, then set passwords, install phpMyAdmin, link it to Apache, restart services, and verify with the server URL.
Set the server hostname, such as Saturn, and update its date and time zone; edit the hosts file with nano, adding the IP and hostname, then verify the date.
Create a non-root user to reduce the risk of accidental system edits, then grant elevated privileges with sudo as needed by adding the user to the sudo group.
Generate an RSA 2048 key pair with PuTTYgen, save the private key, and place the public key in the server's authorized_keys to enable SSH key authentication on Windows.
Create an SSH key pair on your Mac to replace the login password, set a passphrase, copy the public key to the server, and enable key-based authentication for secure access.
Review the Apache web root and the HMO directory to verify current permissions. Change ownership to Bob recursively with sudo chown -R Bob to enable uploading, editing, and deleting files.
Install an Ubuntu server graphical desktop, set up noVNC and VNC server, configure startup and services, and remotely administer the server via a local noVNC viewer.
Learn to install and run the TightVNC Java viewer on Windows, configure ssh with PuTTY, and connect to an Ubuntu desktop via the VNC server.
Download realVNC viewer for Mac from realvnc.com, install the DMV file, start the VANOC server on Ubuntu, and connect using the server IP, calling code, and port 5901 to view.
Learn Ubuntu desktop basics for server administration by using the terminal emulator, editing files with mousepad, navigating the application menu, and managing /var/www permissions and ownership.
Strengthen server security by editing sshd_config to disable root login and password authentication, enabling ssh key authentication for the Bob user and requiring a key to access the server.
Learn how to resize a cloud server by upgrading a Linode node from 1 gigabyte to 2048, triggering an automated 20-minute migration and increasing disk and network capacity.
Learn to create manual backups of your Linode server, clone a replica with equal or higher specs in the same data center, and verify restoration by loading the Apache page.
Change the server root password through the Linode dashboard by using the rescue option, type a new password, then reset and reboot; re-enable root access if it was disabled.
Configure a DNS zone file in Linode DNS Manager to map a domain to your web server IP, and manage A, AAAA, NS, MX, CNAME, and TXT records.
Amend your Go Daddy name servers to match your DNS zone file, boot and verify the node server, and understand propagation times up to 24–48 hours.
Install the FileZilla FTP client, run as administrator, and transfer files from your local web directory to the production server while selecting components and creating a desktop shortcut.
Open FileZilla, create a new site entry in the site manager, and configure hostname, the ssh file transfer protocol, private key, and passphrase to connect.
Connect to the web server with FileZilla, navigate to var/www, and upload test.php by drag-and-drop. Then access the domain or IP to verify the hello world page.
Learn to manage files and transfers in FileZilla, including deleting, renaming, copying, and creating files; track uploads in queue, failed, and successful transfers tabs; manage sites with the site manager.
This course is part-one of the nine-part series that starts by taking an in-depth look at how the internet facilitates the movement of data packets across both LANs (Local Area Network) and WANs (Wide Area Network). Students learn how to interpret various protocols such as TCP/IP, HTTP, HTTPs, SMTP and FTP. We examine the entire flow and life-cycle of data-packet movement from origin to destination. The course examines the role of DNS and SMTP servers in routing internet traffic and email transmissions. Mechanism to safeguard the movement of data, such as network routers, ports and firewalls, are also explored.
Students are then introduced to the web development process and planning stages of building websites and complex web applications. We conduct an overview of web hosting infrastructures such as shared, VPS, Dedicated and Cloud hosting solutions through case analysis. We then take a look at the role of Domain name registrars and ICANN (The Internet Corporation for Assigned Names and Numbers). Students learn to register and administer domain names through the GoDaddy domain management console. Management features such as Name Server assignment, auto-renewal, domain privacy, and domain forwarding will be covered.
With first-hand insights into the creation of effective web infrastructures and domain management, students learn to configure local testing servers. This includes installing and configuring WAMP/MAMP (Windows/MAC, Apache, MySQL, PhpMyAdmin) on a PC or MAC system. We discuss the role of each essential service as it applies to testing dynamic, database-driven web applications on a local computing system.
Students then explore the configuration of a live production server using popular cloud hosting providers such as Linode. This includes deployment and administration of Ubuntu on Linux based distributions and essential web services (LAMP Stack - Linux, Apache, MySQL, PhpMyAdmin) on scalable virtual machines. Several remote access tools such as PuTTy and Terminal will be used to administer virtual servers through the use of command lines. Servers will be configured with security in mind, using multi-user accounts, SSH authentication, and file permission management.
Students also learn to install and connect to their virtual machines using remote desktop connection tools such as Tight VNC and Real VNC. The entire Linode management console will be explored to demonstrate how to complete various tasks including: creating backups, server re-sizing, changing root passwords, DNS management, and general administration.
Lastly, the course takes a look at FTP clients and establishing connections from local machines to production servers to upload web content. We will explore the FileZilla interface and provide demonstrations on uploading, deleting and modifying remote server files.