Back to all questions

What are Server Side Techniques?

Rostyslav Pidgornyi
Server Side Techniques (SST)
June 10, 2024

Here are the different kinds of server side techniques:

Technique Description
Server-Side Rendering (SSR) Generates HTML on the server based on user data, enhancing SEO.
Server-Side Request Forgery (SSRF) Tricks server into making unauthorized requests, potentially leading to data breaches or DoS attacks.
Server-Side Events (SSE) Maintains a persistent connection for real-time updates without page refreshes.
Server-Side Tracking Collects user data on the server for more accurate and secure tracking.

{{cool-component}}

Main Server-Side Techniques 

Client-side scripting, like JavaScript, runs within your web browser, while server-side techniques leverage the power of the web server to perform specific tasks.

Keeping that in mind here’s what constitutes server-side techniques:

1. Server-Side Rendering (SSR)

Unlike static content, which is pre-built HTML files delivered as-is, SSR allows the server to dynamically generate the HTML based on user information, requests, or database queries. This approach enhances SEO (Search Engine Optimization) as search engines can easily crawl and index the content.

SSR is particularly beneficial when dealing with dynamic and static content. Think of a news website. With static content, every user would see the same homepage, regardless of their location. But with SSR, the server can personalize the homepage by including local news stories for each user's region.

2. Server-Side Request Forgery (SSRF)

SSRF exploits vulnerabilities in server-side scripts to trick the server into making unauthorized requests to external resources. 

Imagine a malicious user crafting a seemingly harmless form submission that, unbeknownst to you, forces the server to send sensitive data (like internal files or database credentials) to an attacker's server.

SSRF attacks can be dangerous because they can potentially lead to:

  • Data breaches: If the attacker can trick the server into accessing sensitive data, they can steal it for their own purposes.
  • System compromise: In some cases, SSRF attacks can be used to gain unauthorized access to the server itself.
  • Denial-of-service (DoS) attacks: An attacker could exploit an SSRF vulnerability to overload the server with requests, making it unavailable to legitimate users.

3. Server-Side Events (SSE)

Ever notice how stock tickers or chat applications update in real-time without you needing to refresh the page? That's Server-side events (SSE) in a nutshell. SSE enables a persistent connection between the browser and the server. 

The server can then push updates (like new stock prices or incoming messages) to the browser as they occur, eliminating the need for constant polling. This real-time data exchange creates a more dynamic and engaging user experience.

SSE is similar to other server push techniques such as those found in HTTP/2 server push. I’d recommend you check them out. 

4. Server-Side Tracking

Traditional website tracking relies on code snippets placed on a website that interact with the visitor's browser to collect data. This is called client-side tracking. Server-side tracking, on the other hand, takes a different approach.

Here's how server-side tracking works:

  • Instead of the visitor's browser, a server (often a cloud-based server) handles the data collection.
  • When a user visits a website, their activity triggers the server to collect information about their visit.
  • This data is then sent to analytics or marketing tools for further processing.

Other Server Side Techniques

Now, aside from these 4 major ones, there’s a world of server-side techniques out these, some of which include:

Technique Description
Server-Side Caching Stores frequently accessed data on the server to reduce load times and improve performance.
Server-Side Includes (SSI) Embeds content from multiple files into a single file on the server before serving it to the client.
Server-Side Scripting Executes scripts on the server to generate dynamic web content based on user interactions.
Server-Side Authentication Manages user login and session data on the server to ensure secure access to web applications.
Server-Side Encryption Encrypts data on the server to protect sensitive information during storage and transmission.