Web Development Fundamentals: Protocols, Databases, and CMS

Web Protocols

HTTP and HTTPS

  • HTTP: Transfers hypertext; governs communication between web servers and browsers.
  • HTTPS: Uses SSL/TLS for secure communication.

File Protocols

  • FTP: Transfers files between client and server (upload/download).
  • SFTP (SSH): Secure shell file transfer protocol.

Email Protocols

  • POP (Post Office Protocol): Retrieves mail from a server, downloading it to a local device for offline access.
  • SMTP (Simple Mail Transfer Protocol): Sends messages between servers and transmits mail through the internet.

Server Communication

  • Telnet: Provides interactive command-line access to a remote server for management.

Server Response Codes

  • 200: Success; page found and delivered.
  • 30x: Redirection (301: Permanent, 302: Temporary).
  • 404: Page not found; server responded but the source is unavailable.
  • 50x: Server failure (500: Code/page error, 503: Access not allowed).

Client Navigation and Web Evolution

The process involves interpreting HTML/CSS, executing JavaScript, and displaying multimedia. The server answers requests by executing business logic, querying databases, and generating content.

Core Technologies

  • HTML: Markup language, tag-based, interpreted by web browsers.
  • CSS: Presents content, composed of selectors and rules.

Evolution of the Internet

  • Web 1.0: Informative documents, no interaction, poor/unstructured design.
  • Web 2.0: Emergence of creative environments and bidirectional communication.
  • Web 3.0: Semantic content, inter-device communication, IoT, and standardization.
  • Semantic Web: An extension of the WWW that structures data so machines can read and connect meaning.
  • Rich Snippets and SEO: HTML markup embedded in code to provide advanced visual results on search engines.

Domain Names and Hosting

A good domain name balances branding and SEO. Hosting types include:

  • Shared Hosting: Cheapest, shared resources.
  • Virtual Private Server (VPS): Virtualized and separated resources.
  • Dedicated Hosting: Exclusive server resources for high-performance projects.
  • Cloud Hosting: Virtual servers with scalable CPU, space, and memory.

Content Delivery Networks (CDN) are used to distribute content and improve performance.

Web Architecture

  • Standard/Company Page: Focuses on breadcrumbs, categories, and conversion.
  • Blog: Uses interlinking, section divisions, and static pages.
  • Online Shop: Features filters, sections, and cross-selling.
  • Pillar Page: Attracts organic traffic.
  • Transactional Page: Facilitates specific user interactions (e.g., adding to cart).
  • Topic Cluster: Content pieces answering frequently asked questions.

Frameworks and CMS

Frameworks (like Symfony or Laravel) provide organized source code, security, and community support. They often follow the MVC pattern: Model (database), View (front-end), and Controller (logic).

CMS (Content Management Systems)

Systems like WordPress, PrestaShop, and Shopify allow for efficient content management. WordPress uses Pages (static) and Posts (temporal), organized by Categories and Tags.

Databases and SQL

SQL is used to manage relational databases. DBMS (Database Management Systems) provide tools to define, manipulate, and secure data.

Entity-Relationship Modeling (ERM)

  • Rectangles: Entities.
  • Ellipses: Attributes.
  • Rhombuses: Relationships.
  • Lines: Links.

Data Integrity

  • Required Data: Non-null constraints.
  • Validity Check: Ensuring correct data types.
  • Entity Integrity: Unique primary keys.
  • Referential Integrity: Consistency between foreign and primary keys.

Common SQL Commands

  • INSERT: Add elements to a table.
  • DELETE: Remove records.
  • UPDATE: Modify existing data.
  • SELECT: Retrieve data (supports ORDER BY, ASC, DESC).