# Upsun Developer: Docs

> Upsun Developer — documentation, guides, and more.

## Docs

### Get Started

- [Get Started with Upsun](https://developer.upsun.com/docs/get-started/index.md): Deploy your first project in minutes.

#### Setup Guide

- [Getting started with Upsun](https://developer.upsun.com/docs/get-started/here/index.md)
- [Setup](https://developer.upsun.com/docs/get-started/here/setup.md)
- [Create a project](https://developer.upsun.com/docs/get-started/here/create-project.md): All you need to know about creating a new project with Upsun
- [Set resources](https://developer.upsun.com/docs/get-started/here/set-resources.md): Flexible resources on Upsun are easy to use. Find all you need to know about resources allocation there.
- [Make changes to your project](https://developer.upsun.com/docs/get-started/here/make-changes.md): How to work on a daily basis with an Upsun project
- [Third party integrations](https://developer.upsun.com/docs/get-started/here/third-party.md)
- [Get support](https://developer.upsun.com/docs/get-started/here/support.md): Find out how to get help if you're experiencing issues with Upsun.

##### Configure your project

- [Configure your project](https://developer.upsun.com/docs/get-started/here/configure/index.md): Add the required YAML configuration files to deploy your project on Upsun.
- [JavaScript/Node.js](https://developer.upsun.com/docs/get-started/here/configure/nodejs.md): All you need to know about configuring a new Javascript/Node.js project with Upsun
- [PHP](https://developer.upsun.com/docs/get-started/here/configure/php.md): All you need to know about configuring a new PHP project with Upsun
- [Python](https://developer.upsun.com/docs/get-started/here/configure/python.md): All you need to know about configuring a new Python project with Upsun

##### Local development

- [Local development](https://developer.upsun.com/docs/get-started/here/local/index.md): All you need to know about working locally with an Upsun project.
- [Tethered](https://developer.upsun.com/docs/get-started/here/local/tethered.md): Sync your local Upsun with your remote environment to start contributing.

#### Pick a Stack

- [How to deploy](https://developer.upsun.com/docs/get-started/stacks/index.md)

##### PHP

- [Deploy PHP apps on Upsun](https://developer.upsun.com/docs/get-started/stacks/php.md): Choose a PHP framework and follow a step-by-step guide to deploy on Upsun.

###### Laravel

- [Deploy Laravel on Upsun](https://developer.upsun.com/docs/get-started/stacks/laravel/index.md): Complete the last required steps to successfully deploy Laravel on Upsun.
- [Get started](https://developer.upsun.com/docs/get-started/stacks/laravel/get-started.md): See how to get started deploying Laravel on Upsun.
- [Configure environment variables](https://developer.upsun.com/docs/get-started/stacks/laravel/environment-variables.md): Learn about the environment variables added by the Upsun CLI.
- [Set up cron jobs](https://developer.upsun.com/docs/get-started/stacks/laravel/crons.md): Understand how to configure Laravel cron jobs.
- [Set up Redis](https://developer.upsun.com/docs/get-started/stacks/laravel/setup-redis.md): Setting up Redis for cache, sessions & queues
- [Manage continous observability with Blackfire](https://developer.upsun.com/docs/get-started/stacks/laravel/blackfire.md): Set up a continuous observability strategy for your Laravel app with Blackfire.
- [Handle queues with Horizon](https://developer.upsun.com/docs/get-started/stacks/laravel/laravel-horizon.md): Setting up Laravel Horizon
- [Debug with Laravel Telescope](https://developer.upsun.com/docs/get-started/stacks/laravel/laravel-telescope.md): Setting up Laravel Telescope for debugging Laravel
- [FAQ](https://developer.upsun.com/docs/get-started/stacks/laravel/faq.md): Troubleshoot issues you might encounter using [Laravel](https://laravel.com/), a PHP framework on Upsun.

###### Symfony

- [Deploy Symfony on Upsun](https://developer.upsun.com/docs/get-started/stacks/symfony/index.md): Complete the last required steps to successfully deploy Symfony on Upsun.
- [Get started](https://developer.upsun.com/docs/get-started/stacks/symfony/get-started.md): See how to get started deploying Symfony on Upsun.
- [Configure environment variables](https://developer.upsun.com/docs/get-started/stacks/symfony/environment-variables.md): Learn about the environment variables added by the Symfony integration.
- [Set up cron jobs](https://developer.upsun.com/docs/get-started/stacks/symfony/crons.md): Understand how to configure Symfony cron jobs.
- [Configure workers](https://developer.upsun.com/docs/get-started/stacks/symfony/workers.md): Understand how to configure Symfony workers.
- [Manage continous observability with Blackfire](https://developer.upsun.com/docs/get-started/stacks/symfony/blackfire.md): Set up a continuous observability strategy for your Symfony app with Blackfire.
- [Symfony integration](https://developer.upsun.com/docs/get-started/stacks/symfony/integration.md): Learn how to use the Symfony integration for a better Upsun experience.
- [Local development](https://developer.upsun.com/docs/get-started/stacks/symfony/local.md): Sync Upsun with your local environments to start contributing.
- [Symfony CLI Tips](https://developer.upsun.com/docs/get-started/stacks/symfony/symfony-cli-tips.md): Find out about the most useful commands when using the Symfony CLI.
- [FAQ](https://developer.upsun.com/docs/get-started/stacks/symfony/faq.md): Troubleshoot issues you might encounter using [Symfony](https://www.symfony.com/), a PHP framework on Upsun.

##### JavaScript

- [Deploy JavaScript apps on Upsun](https://developer.upsun.com/docs/get-started/stacks/javascript.md): Choose a JavaScript framework and follow a step-by-step guide to deploy on Upsun.
- [Deploy Next.js on Upsun](https://developer.upsun.com/docs/get-started/stacks/nextjs.md): Complete the last required steps to successfully deploy Next.js on Upsun.

###### Express

- [Deploy Express on Upsun](https://developer.upsun.com/docs/get-started/stacks/express/index.md): Complete the last required steps to successfully deploy Express on Upsun.
- [Add a database to Express](https://developer.upsun.com/docs/get-started/stacks/express/add-database.md): Once your Express app has been deployed on Upsun, you might want to add a service to it.

###### Strapi

- [Deploy Strapi on Upsun](https://developer.upsun.com/docs/get-started/stacks/strapi/index.md): Complete the last required steps to successfully deploy Strapi on Upsun.
- [Add a database to Strapi](https://developer.upsun.com/docs/get-started/stacks/strapi/add-database.md): Once Your Strapi application has been deployed on Upsun, you might want to add and configure a service to your application.

##### Python

- [Deploy Python apps on Upsun](https://developer.upsun.com/docs/get-started/stacks/python.md): Choose a Python framework and follow a step-by-step guide to deploy on Upsun.
- [Deploy Django on Upsun](https://developer.upsun.com/docs/get-started/stacks/django.md): A step-by-step guide to deploy a Django application on Upsun, from a blank project to a live URL.
- [Deploy Flask on Upsun](https://developer.upsun.com/docs/get-started/stacks/flask.md): Complete the last required steps to successfully deploy Flask on Upsun.

##### AI

- [How to deploy AI](https://developer.upsun.com/docs/get-started/ai/index.md)
- [Host AI Agents](https://developer.upsun.com/docs/get-started/ai/aiagent.md)
- [Hosting Model Context Protocol (MCP) Servers](https://developer.upsun.com/docs/get-started/ai/deploy-mcp.md)
- [The Upsun MCP Server](https://developer.upsun.com/docs/get-started/ai/using-the-mcp.md): The Upsun Model Context Protocol (MCP) Server allows users to perform infrastructure operations, monitor environments, and manage resources using natural language commands and AI assistants.
- [Upsun Performance Agent](https://developer.upsun.com/docs/get-started/ai/upsun-performance-agent.md): Automatically find performance bottlenecks in your Upsun application. The performance agent analyzes up to 7 days of profiling and traffic data and generates an AI-powered report with actionable recommendations.

### Core Concepts

#### How Upsun Works

- [What is Upsun?](https://developer.upsun.com/docs/core-concepts/index.md): Find out which problem Upsun is trying to solve.
- [Philosophy](https://developer.upsun.com/docs/core-concepts/philosophy.md): Gain insight into the philosophy of Upsun.

#### Workflow Overview

- [Workflow Overview](https://developer.upsun.com/docs/core-concepts/workflow.md): Learn about the YAML configuration, project structure, build and deploy process, and how to get support.
- [Structure](https://developer.upsun.com/docs/core-concepts/structure.md): Learn about how your Upsun environments are structured and which files control that structure.
- [Get support](https://developer.upsun.com/docs/core-concepts/get-support.md): Find out how to get help if you're experiencing issues with Upsun.

##### YAML

- [YAML](https://developer.upsun.com/docs/core-concepts/yaml/index.md): An overview of YAML and its use at Upsun.
- [What YAML is](https://developer.upsun.com/docs/core-concepts/yaml/what-is-yaml.md): An introduction to what YAML is and how to create and modify YAML files.
- [Upsun YAML structure](https://developer.upsun.com/docs/core-concepts/yaml/yaml-structure.md): A description of the YAML file for Upsun.
- [Upsun YAML tags](https://developer.upsun.com/docs/core-concepts/yaml/platform-yaml-tags.md): A description of custom YAML tags available for Upsun files.

#### Using Upsun Effectively

- [Using Upsun Effectively](https://developer.upsun.com/docs/core-concepts/best-practices/index.md): Here are some tips for getting the most out of Upsun's many features.
- [HTTP caching](https://developer.upsun.com/docs/core-concepts/best-practices/http-caching.md): See your options for HTTP caching with Upsun.
- [From monoliths through headless to microservices](https://developer.upsun.com/docs/core-concepts/best-practices/oneormany.md): Choose the best app topology depending on your needs.
- [Keep your Git repository clean](https://developer.upsun.com/docs/core-concepts/best-practices/clean-repository.md): To avoid performance issues, prevent your Git repository from becoming too large.

#### Common Tasks

- [Common Tasks](https://developer.upsun.com/docs/core-concepts/common-tasks/index.md): Here are a set of tutorials for migrating between regions, exporting data, and more.
- [Automate your code updates](https://developer.upsun.com/docs/core-concepts/common-tasks/dependency-updates.md): Learn how to automate your dependency updates through a source operation.
- [Restrict access to a service](https://developer.upsun.com/docs/core-concepts/common-tasks/restrict-service-access.md): Learn how to restrict access to a service using a worker and additional endpoints to the service.
- [Exporting data](https://developer.upsun.com/docs/core-concepts/common-tasks/exporting.md): See how to export your code, files and service data.
- [Upgrade to a maintained version of a runtime or service](https://developer.upsun.com/docs/core-concepts/upgrade-runtimes-services.md): Upgrade a runtime or service to a maintained version to avoid build failures and stay protected against known CVEs.

### Configure Apps & Services

#### Configure apps

- [Configure apps](https://developer.upsun.com/docs/configure-apps/index.md): Control your apps and how they're built and deployed on Upsun with YAML configuration.

##### Image types

- [Choose an image type](https://developer.upsun.com/docs/configure-apps/app-reference/index.md): Configure your app and control how it's built and deployed on Upsun.
- [Single-runtime image](https://developer.upsun.com/docs/configure-apps/app-reference/single-runtime-image.md): See all of the options for controlling your apps and how they're built and deployed on Upsun.
- [Composable image](https://developer.upsun.com/docs/configure-apps/app-reference/composable-image.md): Use the Upsun composable image to build and deploy your app.

##### Image properties

- [Image properties](https://developer.upsun.com/docs/configure-apps/image-properties/index.md): Details about image properties in the Upsun config.yaml file
- [Access](https://developer.upsun.com/docs/configure-apps/image-properties/access.md): An access dictionary that defines the access control for roles accessing app environments.
- [Additional hosts](https://developer.upsun.com/docs/configure-apps/image-properties/additional_hosts.md): An additional hosts dictionary that maps hostnames to IP addresses.
- [Workload authorizations](https://developer.upsun.com/docs/configure-apps/image-properties/authorizations.md): An authorizations list that grants applications and tasks narrowly-scoped access to the environment API and task operations.
- [Container profile](https://developer.upsun.com/docs/configure-apps/image-properties/container_profile.md): Defines the container profile of the application.
- [Crons](https://developer.upsun.com/docs/configure-apps/image-properties/crons.md): A cron dictionary that defines scheduled tasks for the app.
- [Hooks](https://developer.upsun.com/docs/configure-apps/image-properties/hooks.md): A hooks dictionary that defines which commands run at different stages in the build and deploy process.
- [Mounts](https://developer.upsun.com/docs/configure-apps/image-properties/mounts.md): Directories that are writable even after the app is built.
- [Relationships](https://developer.upsun.com/docs/configure-apps/image-properties/relationships.md): A dictionary of relationships that defines the connections to other services and apps.
- [Source](https://developer.upsun.com/docs/configure-apps/image-properties/source.md): Contains information about the app’s source code and operations that can be run on it.
- [Variables](https://developer.upsun.com/docs/configure-apps/image-properties/variables.md): A variables dictionary that defines variables to control the environment.
- [Web](https://developer.upsun.com/docs/configure-apps/image-properties/web.md): A web instance that defines how the web application is served.
- [Workers](https://developer.upsun.com/docs/configure-apps/image-properties/workers.md): Defines the list of worker names, which are alternate copies of the application to run as background processes.

##### Advanced

- [Source operations](https://developer.upsun.com/docs/configure-apps/source-operations.md): Run automated code updates via source operations.
- [Runtime operations](https://developer.upsun.com/docs/configure-apps/runtime-operations.md): Set up runtime operations to run one-off commands on your project through the Upsun CLI.
- [Timezones](https://developer.upsun.com/docs/configure-apps/timezone.md): Learn more about the different timezones on Upsun and when you can customize them.
- [Work with workers](https://developer.upsun.com/docs/configure-apps/workers.md): Interact with your worker instances to handle background tasks for your apps.
- [Configure tasks to run on-demand workloads and AI agents](https://developer.upsun.com/docs/configure-apps/tasks.md): Run on-demand workloads like AI agents and batch jobs alongside your apps and services, triggered from the Console or through the API.

###### Configure what's served

- [Configure what's served](https://developer.upsun.com/docs/configure-apps/web/index.md)
- [Create a basic PHP app with a front controller](https://developer.upsun.com/docs/configure-apps/web/php-basic.md): Start with a basic PHP app with a front controller for dynamic requests.
- [Rewrite requests without redirects](https://developer.upsun.com/docs/configure-apps/web/rewrite-requests.md): Rewrite requests to be served by other parts of your app without directing users.
- [Serve directories at different paths](https://developer.upsun.com/docs/configure-apps/web/serve-different-directories.md): Serve directories at different places than where they are in your app.
- [Serve static sites](https://developer.upsun.com/docs/configure-apps/web/static.md): Serve completely static sites
- [Set custom headers on static content](https://developer.upsun.com/docs/configure-apps/web/custom-headers.md): Set custom headers for your static content such as custom content-types or limits to cross-origin usage.

###### Multiple apps

- [Set up multiple apps in a single project](https://developer.upsun.com/docs/configure-apps/multi-app/index.md): Create multiple apps within a single project, such as a CMS backend connected to a frontend to display it.
- [Choose a project structure](https://developer.upsun.com/docs/configure-apps/multi-app/project-structure.md): Explore possible code structures you can apply to your multiple application projects.
- [Define routes for your multiple apps](https://developer.upsun.com/docs/configure-apps/multi-app/routes.md): Learn about the many ways you can define routes between your apps.
- [Define relationships between your multiple apps](https://developer.upsun.com/docs/configure-apps/multi-app/relationships.md): Find out how relationships are managed between your apps.

###### Use build and deploy hooks

- [Use build and deploy hooks](https://developer.upsun.com/docs/configure-apps/hooks/index.md): Add custom scripts at different stages in the build and deploy process.
- [Change hooks in different environments](https://developer.upsun.com/docs/configure-apps/hooks/vary-hooks-by-environment.md): Change what runs in your hooks depending on the current environment type.
- [Comparison of hooks](https://developer.upsun.com/docs/configure-apps/hooks/hooks-comparison.md): What hooks are available in the build and deploy process and how to choose which to use.
- [Use hooks with dependencies](https://developer.upsun.com/docs/configure-apps/hooks/hooks-and-dependencies.md): Manage dependencies for your hooks, such as compiling Sass files as part of your build.

#### Languages

- [Languages](https://developer.upsun.com/docs/languages/index.md): We sure do support a lot of runtimes.
- [C#/.NET Core](https://developer.upsun.com/docs/languages/dotnet.md): Upsun supports deploying .NET applications by allowing developers to define a build process and pass its variables to the .NET Core build environment.
- [Elixir](https://developer.upsun.com/docs/languages/elixir.md): Upsun supports building and deploying applications written in Elixir. There is no default flavor for the build phase, but you can define it explicitly in your build hook. Upsun Elixir images support both committed dependencies and download-on-demand. The underlying Erlang version is 22.0.7.
- [Go](https://developer.upsun.com/docs/languages/go.md): Upsun supports building and deploying applications written in Go using Go modules. They're compiled during the Build hook phase, and support both committed dependencies and download-on-demand.
- [Ruby](https://developer.upsun.com/docs/languages/ruby.md): Upsun supports deploying any Ruby application. Your application can use any Ruby application server such as Puma or Unicorn and deploying a Rails or a Sinatra app is very straight forward.
- [Rust](https://developer.upsun.com/docs/languages/rust.md): Upsun supports building and deploying applications written in Rust. Dependencies are managed with Cargo, and apps are built using `cargo build` during the build hook and started with a custom web command.

##### Java

- [Java](https://developer.upsun.com/docs/languages/java/index.md): Java is a general-purpose programming language, and one of the most popular in the world today. Upsun supports Java runtimes that can be used with build management tools such as Gradle, Maven, and Ant.
- [Moving a Java application to Upsun](https://developer.upsun.com/docs/languages/java/migration.md)
- [Performance tuning Java](https://developer.upsun.com/docs/languages/java/tuning.md)

##### JavaScript/Node.js

- [JavaScript/Node.js](https://developer.upsun.com/docs/languages/nodejs/index.md): Get started creating JavaScript apps with Node.js on Upsun.
- [Debugging](https://developer.upsun.com/docs/languages/nodejs/debug.md)
- [Manage Node.js versions](https://developer.upsun.com/docs/languages/nodejs/node-version.md): See how to manage different Node.js versions in your Upsun containers."

##### PHP

- [PHP](https://developer.upsun.com/docs/languages/php/index.md): Deploy PHP apps on Upsun using PHP-FPM, FrankenPHP, or Swoole. Configure PHP extensions, tune FPM worker settings, enable Xdebug for debugging, and manage dependencies with Composer.
- [Extensions](https://developer.upsun.com/docs/languages/php/extensions.md): See what PHP extensions are available with each PHP version on Upsun.
- [PHP performance tuning](https://developer.upsun.com/docs/languages/php/tuning.md)
- [PHP-FPM sizing](https://developer.upsun.com/docs/languages/php/fpm.md): Learn how to adjust the maximum number of PHP-FPM workers for your app
- [FrankenPHP](https://developer.upsun.com/docs/languages/php/frankenphp.md): Run PHP applications on Upsun using FrankenPHP, a modern PHP application server built on Caddy.
- [Using Xdebug](https://developer.upsun.com/docs/languages/php/xdebug.md)
- [Custom Redis versions](https://developer.upsun.com/docs/languages/php/redis.md)
- [Swoole](https://developer.upsun.com/docs/languages/php/swoole.md): Use the Swoole extension on Upsun to run PHP applications with coroutine-based async networking.
- [Authenticated Composer repositories](https://developer.upsun.com/docs/languages/php/composer-auth.md): Allow Composer to authenticate against a private third-party Composer repository and download PHP packages from it.
- [Troubleshoot PHP](https://developer.upsun.com/docs/languages/php/troubleshoot.md): Learn how to troubleshoot common issues in PHP.

##### Python

- [Python](https://developer.upsun.com/docs/languages/python/index.md): Get started creating Python apps on Upsun.
- [Manage Python dependencies](https://developer.upsun.com/docs/languages/python/dependencies.md): See how to manage Python dependencies with different package managers.
- [Web servers](https://developer.upsun.com/docs/languages/python/server.md): See how to start your apps as you wish with ASGI and WSGI servers.
- [Manage Python versions in non-Python containers](https://developer.upsun.com/docs/languages/python/python-version.md): See how to manage different Python versions in your Upsun containers.

#### Services

- [Add services](https://developer.upsun.com/docs/add-services/index.md): See how to add services such as databases, cache, and search engines and configure them to suit your needs.
- [ClickHouse](https://developer.upsun.com/docs/add-services/clickhouse.md)
- [Elasticsearch and Enterprise Search (search service)](https://developer.upsun.com/docs/add-services/elasticsearch.md): Add Elastic Enterprise Search to your Upsun project as a Premium service. Legacy Elasticsearch versions (up to 7.10) remain available but are at end of life.
- [Gotenberg](https://developer.upsun.com/docs/add-services/gotenberg.md): Gotenberg is a user-friendly API for PDF files.
- [Headless Chrome](https://developer.upsun.com/docs/add-services/headless-chrome.md): Headless Chrome is a headless browser that can be configured on projects like any other service on Upsun.
- [InfluxDB (Database service)](https://developer.upsun.com/docs/add-services/influxdb.md): InfluxDB is a time series database optimized for high-write-volume use cases such as logs, sensor data, and real-time analytics.
- [Kafka (Message queue service)](https://developer.upsun.com/docs/add-services/kafka.md): Apache Kafka is an open-source stream-processing software platform.
- [Memcached (Object cache)](https://developer.upsun.com/docs/add-services/memcached.md): Memcached is a simple in-memory object store well-suited for application level caching.
- [Mercure](https://developer.upsun.com/docs/add-services/mercure.md): [Mercure](https://mercure.rocks/) is a real-time communication protocol and hub designed for modern web apps. It allows servers to instantly push updates to browsers, mobile clients, and backend workers through Server-Sent Events (SSE).
- [MongoDB (Database service)](https://developer.upsun.com/docs/add-services/mongodb.md): MongoDB is a cross-platform, document-oriented database. For more information on using MongoDB, see MongoDB's own documentation.
- [Network Storage](https://developer.upsun.com/docs/add-services/network-storage.md)
- [OpenSearch (search service)](https://developer.upsun.com/docs/add-services/opensearch.md): OpenSearch is a distributed RESTful search engine built for the cloud.
- [RabbitMQ (message queue service)](https://developer.upsun.com/docs/add-services/rabbitmq.md): See how to configure RabbitMQ for your messaging needs.
- [Redis (Object cache)](https://developer.upsun.com/docs/add-services/redis.md)
- [Solr (Search service)](https://developer.upsun.com/docs/add-services/solr.md)
- [Valkey](https://developer.upsun.com/docs/add-services/valkey.md)
- [Varnish](https://developer.upsun.com/docs/add-services/varnish.md)
- [Vault key management service](https://developer.upsun.com/docs/add-services/vault.md)

##### MariaDB/MySQL

- [MariaDB/MySQL (database service)](https://developer.upsun.com/docs/add-services/mysql/index.md): See how to configure a MariaDB/MySQL server to store your data.
- [MariaDB read-only replication](https://developer.upsun.com/docs/add-services/mysql/mysql-readonly-replication.md): Configure and access read-only MariaDB replicas to ease the load on a primary database.
- [MariaDB/MySQL external replication](https://developer.upsun.com/docs/add-services/mysql/mysql-replication.md): In rare cases, it may be useful to maintain a replica instance of your MySQL/MariaDB database outside of Upsun on a remote server.
- [Troubleshoot MySQL](https://developer.upsun.com/docs/add-services/mysql/troubleshoot.md)

##### PostgreSQL

- [PostgreSQL (Database service)](https://developer.upsun.com/docs/add-services/postgresql/index.md)
- [PostgreSQL read-only replication](https://developer.upsun.com/docs/add-services/postgresql/postgresql-readonly-replication.md): Configure and access read-only PostgreSQL replicas to ease the load on a primary database.

##### Self-hosted services

- [Self-hosted services](https://developer.upsun.com/docs/add-services/self-hosted.md): Deploy services that aren't available as managed Upsun services using composable images or public Docker images.

###### Public Docker images

- [Self-hosted services from public Docker images](https://developer.upsun.com/docs/add-services/docker-images/index.md): Run self-hosted services by using Docker images from public registries.
- [Meilisearch](https://developer.upsun.com/docs/add-services/docker-images/docker-meilisearch.md): Deploy the official Meilisearch Docker image on {{config_vendor_name}} for fast, self-hosted search.
- [n8n](https://developer.upsun.com/docs/add-services/docker-images/docker-n8n.md): Deploy the official n8n Docker image on Upsun for workflow automation, AI agent orchestration, and webhook-driven integrations.

#### Routes

- [Define routes](https://developer.upsun.com/docs/routes/index.md): Set your project up so HTTP requests to your app are sent to the right locations.
- [Server Side Includes (SSI)](https://developer.upsun.com/docs/routes/ssi.md): SSI commands enable you to include files within other pages.
- [HTTP cache](https://developer.upsun.com/docs/routes/cache.md): Upsun supports HTTP caching at the server level. Caching is enabled by default, but is only applied to `GET` and `HEAD` requests.
- [HTTPS](https://developer.upsun.com/docs/routes/https.md): Learn how to enable HTTPS for your site and configure TLS connections.
- [Proxy routes](https://developer.upsun.com/docs/routes/proxy.md): Pass requests to a location outside your Upsun project using proxy routes.
- [Redirects](https://developer.upsun.com/docs/routes/redirects.md): Managing redirection rules is a common requirement for web applications, especially in cases where you do not want to lose incoming links that have changed or been removed over time.

### Build, Deploy & Run

- [Build and deploy](https://developer.upsun.com/docs/core-concepts/build-deploy.md): See how applications get built and deployed with Upsun.

#### Local development

- [Set up your local development environment](https://developer.upsun.com/docs/development/local/index.md): Set up a local development environment to test out changes to your app's code.

##### Integrated environments

- [Use DDEV for local development](https://developer.upsun.com/docs/development/local/ddev.md): Use DDEV to set up local development environments.

##### Supported environments

- [Tethered local development](https://developer.upsun.com/docs/development/local/tethered.md)
- [Untethered local development](https://developer.upsun.com/docs/development/local/untethered.md)

#### Variables

- [Variables overview](https://developer.upsun.com/docs/development/variables/index.md): Variables give you control over your project's build process and runtime environment. You can set them in your code to make changes across your project or independent of the code for environment-specific settings.
- [Set variables](https://developer.upsun.com/docs/development/variables/set-variables.md): See how to set variables that you can later use to take control over your app's environment.
- [Use variables](https://developer.upsun.com/docs/development/variables/use-variables.md): See how to use variables that have already been set so you can take control over your app's environment.

#### Development tools

- [Development tools](https://developer.upsun.com/docs/development/tools.md): Tools and utilities to help you develop and manage your applications.
- [Access your site](https://developer.upsun.com/docs/development/access-site.md): Find the URLs you can use to access your site via a web browser.
- [Transfer files to and from your app](https://developer.upsun.com/docs/development/file-transfer.md)
- [HTTP Headers](https://developer.upsun.com/docs/development/headers.md): Upsun adds a number of HTTP headers to both inbound and outbound messages. Most of your own headers are passed through untouched, but a short list of headers is overwritten or removed so your app can trust them.
- [Send email from your Upsun environment using an SMTP proxy](https://developer.upsun.com/docs/development/email.md): Configure outgoing email for your Upsun environment, improve deliverability with SPF and DKIM, and send test messages using the built-in SMTP proxy.
- [Pull code from a private Git repository](https://developer.upsun.com/docs/development/private-repository.md): See how to pull code from a private Git repository into your Upsun build process.
- [Use Git submodules](https://developer.upsun.com/docs/development/submodules.md)
- [Regions](https://developer.upsun.com/docs/development/regions.md): See information about Upsun regions, including their environmental impact and IP addresses.
- [Use Drush with Upsun](https://developer.upsun.com/docs/development/drush.md): Install Drush, make it available on your path, and run Drush commands against your Drupal site on Upsun through the CLI, SSH, or hooks.

#### SSH

- [Connect securely with SSH](https://developer.upsun.com/docs/development/ssh/index.md): Keep your project and apps safe by connecting with SSH when you're interacting with your deployed environments or using the Upsun CLI.
- [Authenticate with SSH keys](https://developer.upsun.com/docs/development/ssh/ssh-keys.md): See how to authenticate your app connections using SSH keys.
- [Troubleshoot SSH](https://developer.upsun.com/docs/development/ssh/troubleshoot-ssh.md)

#### Database management

- [Sanitize databases](https://developer.upsun.com/docs/development/sanitize-db/index.md): Remove sensitive information from databases on preview environments to control access.
- [Sanitizing databases: MariaDB and Drupal](https://developer.upsun.com/docs/development/sanitize-db/mariadb.md): Sanitize MariaDB data in preview environments directly or by using Drush.
- [Sanitizing databases: PostgreSQL and Django](https://developer.upsun.com/docs/development/sanitize-db/postgresql.md): Sanitize PostgreSQL data in preview environments for Django apps.
- [Sanitizing databases: PostgreSQL and Symfony](https://developer.upsun.com/docs/development/sanitize-db/postgresql-symfony.md): Sanitize PostgreSQL data in preview environments for Symfony apps.

### Manage Projects

- [Manage projects](https://developer.upsun.com/docs/projects/index.md): Learn about projects on Upsun and how to configure them.

#### Project settings

- [Project settings](https://developer.upsun.com/docs/projects/settings.md): Manage your project's region, timezone, and lifecycle.
- [Change a project's region](https://developer.upsun.com/docs/projects/region-migration.md): See how to change the region your project is in and why you might want to do so.
- [Change the project timezone](https://developer.upsun.com/docs/projects/change-project-timezone.md): See how to change the timezone for a project and what it affects.
- [Delete a project](https://developer.upsun.com/docs/projects/delete-project.md): See how to delete projects you no longer need.

#### Custom domains

- [Custom domains](https://developer.upsun.com/docs/domains/index.md): Add a custom domain to your Upsun project, configure DNS, set up a CDN, and go live.

##### Set up a custom domain

- [Set up a custom domain](https://developer.upsun.com/docs/domains/steps/index.md): Add a custom domain to your project once it's ready to go live.
- [DNS management and apex domains](https://developer.upsun.com/docs/domains/steps/dns.md): See why `CNAME` records are used and how to handle apex domains.
- [Configure a third-party TLS certificate](https://developer.upsun.com/docs/domains/steps/tls.md)
- [Share subdomains across different projects](https://developer.upsun.com/docs/domains/steps/subdomains.md): Learn how to host subdomains from the same apex domain across multiple Upsun projects using a DNS TXT record and DNS challenge.
- [DNS challenge for domain ownership](https://developer.upsun.com/docs/domains/steps/dns-challenge.md): Verify domain ownership using a DNS TXT record to prevent unauthorized domain assignment across organizations.
- [Set up a custom domain on a preview environment](https://developer.upsun.com/docs/domains/steps/custom-domains-preview-environments.md): Learn how to set up custom domains on your preview environments
- [Troubleshoot domain issues](https://developer.upsun.com/docs/domains/troubleshoot.md): If your site doesn't resolve after you've made DNS changes, check potential solutions to common issues.

##### CDN

- [Content delivery networks (CDNs)](https://developer.upsun.com/docs/domains/cdn/index.md): Improve performance for distributed end-users of your website with a content delivery network (CDN).
- [Set up your Fastly CDN](https://developer.upsun.com/docs/domains/cdn/fastly.md): Learn how to configure your Fastly CDN.
- [Managed Fastly CDN](https://developer.upsun.com/docs/domains/cdn/managed-fastly.md): Bring your content closer to users with a Fastly CDN fully managed by Upsun.
- [Set up your Cloudflare CDN](https://developer.upsun.com/docs/domains/cdn/cloudflare.md): Learn how to configure your Cloudflare CDN.

#### Administration

- [Administration](https://developer.upsun.com/docs/administration/index.md): Administration tasks for your Upsun projects is accessible from within the Console and through the CLI.
- [Organizations](https://developer.upsun.com/docs/administration/organizations.md): See how to manage multiple Upsun projects at once through organizations.
- [Administer teams](https://developer.upsun.com/docs/administration/teams.md): Manage team access and permissions across all your projects and organizations.
- [Administer users](https://developer.upsun.com/docs/administration/users.md): Manage user access and permissions across all your projects and organizations.
- [Pricing](https://developer.upsun.com/docs/administration/pricing.md): Understand how Upsun pricing works.
- [Server upgrades](https://developer.upsun.com/docs/administration/servers.md): Information about how Upsun updates servers

##### Console

- [Console](https://developer.upsun.com/docs/administration/web/index.md): Upsun provides a web Console so you can interact with your projects and manage your environments.
- [Configure a project](https://developer.upsun.com/docs/administration/web/configure-project.md): Configure settings that apply across a project, such as the name, access, and domain.
- [Configure environments](https://developer.upsun.com/docs/administration/web/configure-environment.md): Configure your environments including their name, status, and visibility.

##### Billing

- [Billing](https://developer.upsun.com/docs/administration/billing/index.md): Understand billing accounts and billing profiles, and manage your charges, invoices, and payment methods from the Console.
- [Set up a billing account and billing profile](https://developer.upsun.com/docs/administration/billing/bp-setup.md): To set up billing, start by creating a billing account, configuring a billing profile, and linking Upsun organizations to a billing profile.
- [Add and manage payment methods](https://developer.upsun.com/docs/administration/billing/bp-payment-method.md): Attach a payment method to your billing profile before you can be charged.
- [View invoices](https://developer.upsun.com/docs/administration/billing/bp-invoices.md): View current and past invoices for your billing profile, including invoice ID, amount, status, and line-item usage charges.
- [Monitor spending and usage](https://developer.upsun.com/docs/administration/billing/bp-monitor-billing.md): View monthly cost and usage estimates for your billing profile, and set billing and traffic alerts to catch spending increases early.
- [Manage billing members on a billing profile](https://developer.upsun.com/docs/administration/billing/bp-users.md): Invite and manage billing members who can access and administer a billing profile.
- [Edit a billing profile](https://developer.upsun.com/docs/administration/billing/bp-edit-billing-profile.md): Update the name, contact email, and billing address on an existing billing profile.
- [View discounts and commitments](https://developer.upsun.com/docs/administration/billing/bp-discounts.md): Access discount details and commitment values for your billing profile.
- [View vouchers](https://developer.upsun.com/docs/administration/billing/bp-vouchers.md): View promotional credits applied to your billing profile.
- [Transfer an organization to a different billing profile](https://developer.upsun.com/docs/administration/billing/bp-transfers.md): Move an organization to a different billing profile by contacting Support.
- [Billing FAQ](https://developer.upsun.com/docs/administration/billing/bp-faq.md): Answers to common questions and known issues in the billing system.

##### Security

- [Security](https://developer.upsun.com/docs/administration/security/index.md): For enhanced security, enable Multifactor Authentication (MFA) or Single Sign-On (SSO).
- [Multifactor Authentication (MFA)](https://developer.upsun.com/docs/administration/security/mfa.md): Enhance your organizations' security with Multifactor Authentication (MFA).
- [Single Sign-On (SSO)](https://developer.upsun.com/docs/administration/security/sso.md): Upsun enables you to set up mandatory SSO with a third-party identity provider (IdP) for all your users.

#### Security & compliance

- [Security and compliance](https://developer.upsun.com/docs/security/index.md): Learn how Upsun ensures your data is handled with appropriate care and according to industry standards.
- [Fastly WAF](https://developer.upsun.com/docs/security/fastly-waf.md): Find out about the offers you can choose from to subscribe to the Fastly Next-Gen Web Application Firewall (WAF) through Upsun.
- [Upsun WAF](https://developer.upsun.com/docs/security/waf.md): Learn how the WAF can help protect your site from distributed denial of service (DDoS) attacks.
- [Data retention](https://developer.upsun.com/docs/security/data-retention.md): Upsun logs and stores various types of data as a normal part of its business. This information is only retained as needed to perform relevant business functions. Retention periods vary depending on the type of data stored. If a legal obligation, law enforcement request, or ongoing business need so r…
- [Project isolation](https://developer.upsun.com/docs/security/project-isolation.md): Learn how project isolation is handled at Upsun

### Manage Environments

- [Manage Upsun environments](https://developer.upsun.com/docs/environments/index.md): Learn what environments on Upsun are and how to take advantage of them.

#### Backup & restore

- [Backup & restore](https://developer.upsun.com/docs/environments/backup-restore.md): Protect yourself from potential data loss by backing up and restoring your environments.
- [Back up an environment](https://developer.upsun.com/docs/environments/backup.md): See how to protect yourself from potential data loss by backing up your environments so they can be restored later.
- [Restore an environment from a backup](https://developer.upsun.com/docs/environments/restore.md): See how to restore an environment from a previous state.

#### Environment settings

- [Environment settings](https://developer.upsun.com/docs/environments/settings.md): Configure your environment's parent, default branch, access control, and search engine visibility.
- [Change an environment's parent](https://developer.upsun.com/docs/environments/change-parent.md): Learn how to change a given environment's parent environment.
- [Rename the default environment](https://developer.upsun.com/docs/environments/default-environment.md): See how to change the name of your default/production environment after creating a project.
- [Configure HTTP access control](https://developer.upsun.com/docs/environments/http-access-control.md): Learn how to control access to a given environment using HTTP methods.
- [Manage search indexing for an environment](https://developer.upsun.com/docs/environments/search-engine-visibility.md): Protect SEO health by managing an environment's visibility to search engines.

#### Environment actions

- [Environment actions](https://developer.upsun.com/docs/environments/actions.md): Manage the lifecycle of your environments by canceling activities or deactivating environments.
- [Cancel an activity](https://developer.upsun.com/docs/environments/cancel-activity.md): See how to cancel running or pending activities in an environment.
- [Deactivate an environment](https://developer.upsun.com/docs/environments/deactivate-environment.md): See how to deactivate environments you aren't using.

### Manage Resources

- [Manage resources](https://developer.upsun.com/docs/manage-resources/index.md): Configure resources per environment for each of your apps and services.
- [How resources work on Upsun](https://developer.upsun.com/docs/manage-resources/how-resources-work.md): Understand how resources work on Upsun. Learn the differences between shared and guaranteed CPU, how RAM is allocated, and how to configure scalable resources for your apps.
- [Object storage](https://developer.upsun.com/docs/manage-resources/object-storage.md): Add an S3-compatible object storage bucket to your Upsun project, configure its size, and connect your app through the S3 API.

#### Configure resources

- [Configure resources](https://developer.upsun.com/docs/manage-resources/configure.md): Learn how to initialize, adjust, and manage build resources for your project.
- [Resource initialization](https://developer.upsun.com/docs/manage-resources/resource-init.md): Learn how resources are allocated by default upon first deployment, and how you can define a resource initialization strategy that better fits your needs.
- [Resource configuration](https://developer.upsun.com/docs/manage-resources/adjust-resources.md): Configure CPU, RAM, and disk storage on a per-environment basis so your apps and services can run smoothly.
- [Project build resources](https://developer.upsun.com/docs/manage-resources/build-resources.md): Configure project build resources on Upsun.

#### Scaling

- [Scaling](https://developer.upsun.com/docs/manage-resources/scaling.md): Scale your applications automatically or with guaranteed resource allocations.
- [Autoscaling](https://developer.upsun.com/docs/manage-resources/autoscaling.md): Learn how autoscaling adjusts application, worker, and service instances based on CPU and memory usage to keep your workloads stable and cost-efficient under varying demand.
- [Guaranteed resources](https://developer.upsun.com/docs/manage-resources/guaranteed-resources.md): Learn how Guaranteed CPU on Upsun provide dedicated CPU and memory allocations for consistent, high-performance workloads.

### Observability & Metrics

- [Increase observability](https://developer.upsun.com/docs/observability/index.md): See how to increase observability for your Upsun projects.

#### Infrastructure metrics

- [Infrastructure metrics](https://developer.upsun.com/docs/observability/metrics/index.md): See all of the live infrastructure metrics available to give you an overview of resource usage.
- [HTTP metrics](https://developer.upsun.com/docs/observability/metrics/http-metrics.md): Understand HTTP metrics
- [Understand  metrics](https://developer.upsun.com/docs/observability/metrics/understand-metrics.md): Understand how to read metrics for Upsun environments.

#### Application metrics

- [Application metrics](https://developer.upsun.com/docs/observability/application-metrics/index.md): See how to better understand your applications' real behavior with live and detailed insights.
- [Monitor Cron job executions](https://developer.upsun.com/docs/observability/application-metrics/cron-metrics.md): Learn how to visualize and interpret your Cron job runs directly in the Console.
- [Understanding application observability](https://developer.upsun.com/docs/observability/application-metrics/understanding.md): Understanding the differences between deterministic and probabilistic observability
- [Blackfire for PHP and Python](https://developer.upsun.com/docs/observability/application-metrics/blackfire.md): A full access to Blackfire is bundled with your PHP and Python Upsun projects.

##### Continuous profiling

- [Continuous Profiling dashboard](https://developer.upsun.com/docs/observability/application-metrics/cont-prof.md): Understanding the Continuous Profiling dashboard
- [Comparing Continuous Profiling Timeframes](https://developer.upsun.com/docs/observability/application-metrics/cont-prof-comparison.md): Comparing continuous profiling timeframes
- [Continuous profiling for Go](https://developer.upsun.com/docs/observability/application-metrics/go.md): Configure and use the Go continuous profiler.
- [Continuous profiling for Java](https://developer.upsun.com/docs/observability/application-metrics/java.md): Configure and use the Java continuous profiler.
- [Continuous profiling for Node.js](https://developer.upsun.com/docs/observability/application-metrics/nodejs.md): Configure and use the NodeJS continuous profiler.
- [Continuous profiling for PHP](https://developer.upsun.com/docs/observability/application-metrics/php.md): Configure and use the PHP continuous profiler.
- [Continuous profiling for Python](https://developer.upsun.com/docs/observability/application-metrics/python.md): Configure and use the Python continuous profiler.
- [Continuous profiling for Ruby](https://developer.upsun.com/docs/observability/application-metrics/ruby.md): Configure and use the Ruby continuous profiler.
- [Continuous profiling for Rust](https://developer.upsun.com/docs/observability/application-metrics/rust.md): Configure and use the Rust continuous profiler.

#### Logs

- [Consume logs](https://developer.upsun.com/docs/observability/logs/index.md): See how to access or forward logs to get increased insights into your apps and services.
- [Access your logs](https://developer.upsun.com/docs/observability/logs/access-logs.md): Increase your knowledge of how your apps are performing by accessing their container and activity logs.
- [Forward Upsun and Blackfire logs](https://developer.upsun.com/docs/observability/logs/forward-logs.md): Send your Upsun and Blackfire logs to a third-party service for further analysis.

### Integrations

- [External Integrations](https://developer.upsun.com/docs/integrations/overview.md): Upsun can be integrated with external services.
- [Fastly CDN](https://developer.upsun.com/docs/integrations/fastly-cdn.md): The Fastly CDN integration provides a centralized interface within the Upsun Console to oversee your edge traffic, manage cache, edit access control lists (ACLs), and tune performance without switching platforms. You can also manage dynamic configuration by using Edge Dictionaries.
- [Health notifications](https://developer.upsun.com/docs/integrations/notifications.md): Configure health notifications for disk space and inode usage alerts. Route warning and critical threshold events to email, Slack, PagerDuty, or webhooks.

#### Source integrations

- [Source integrations](https://developer.upsun.com/docs/integrations/source/index.md): See how to maintain your code in a third-party repository that's linked to your Upsun project.
- [Integrate with Bitbucket](https://developer.upsun.com/docs/integrations/source/bitbucket.md): See how to manage your Upsun environments directly from your Bitbucket repository.
- [Integrate with GitHub](https://developer.upsun.com/docs/integrations/source/github.md): See how to manage your Upsun environments directly from your GitHub repository.
- [Integrate with GitLab](https://developer.upsun.com/docs/integrations/source/gitlab.md): See how to manage your Upsun environments directly from your GitLab repository.
- [Resolve access issues with source integrations](https://developer.upsun.com/docs/integrations/source/troubleshoot.md): Learn how to troubleshoot access rights for integrated repositories.

#### Activity scripts

- [Activity scripts](https://developer.upsun.com/docs/integrations/activity/index.md): Upsun supports custom scripts that can fire in response to any activity. These scripts allow you to take arbitrary actions in response to actions in your project, such as when it deploys, when a new branch is created, etc.
- [Activity reference](https://developer.upsun.com/docs/integrations/activity/reference.md): A reference of the properties found in various activities.
- [Utility routines](https://developer.upsun.com/docs/integrations/activity/utility.md): The following utility routines can help simplify common tasks in your activity scripts. They're free to copy, modify, bend, fold, spindle, and mutilate as needed for your own scripts. They also demonstrate some common patterns for working with the `activity` and `project` data structures.
- [Webhooks](https://developer.upsun.com/docs/integrations/activity/webhooks.md): Webhooks allow you to host a script yourself externally that receives the same payload as an activity script and responds to the same events, but can be hosted on your own server in your own language.

##### Examples

- [Example: Discord](https://developer.upsun.com/docs/integrations/activity/discord.md)
- [Example: Slack](https://developer.upsun.com/docs/integrations/activity/slack.md)

### Troubleshooting

- [502 error resolution guide](https://developer.upsun.com/docs/troubleshooting/502-errors.md): Diagnose and resolve common 502 errors that may prevent your Upsun app from starting or running correctly.
- [Troubleshoot development](https://developer.upsun.com/docs/troubleshooting/general.md): See some common solutions to issues you might run into in development.
- [Troubleshoot disks](https://developer.upsun.com/docs/troubleshooting/disks.md)
- [Troubleshoot mounts](https://developer.upsun.com/docs/troubleshooting/mounts.md)

### Resources

- [Glossary](https://developer.upsun.com/docs/glossary/index.md)
- [Data Register](https://developer.upsun.com/docs/registry/index.md): A comprehensive register of data categories across the Upsun platform, including export methods and Data Act classifications.
- [Request features](https://developer.upsun.com/docs/request-features/index.md): We're always open to new and fresh ideas that can help improve our product. Learn how to make a feature request and engage with the Upsun community.
