How to Deploy Static Content in Magento 2

Deploy Static Content in Magento 2

Static content in Magento 2 refers to files like images, JavaScript, and CSS that are used to render your storefront. Deploying this content involves generating the files and placing them in the appropriate directory on your server. The process depends on whether you’re in production or developer mode.

Understanding Deployment Modes

  • Production Mode: Prioritizes performance and security. Static content changes require manual deployment for optimal functioning.
  • Developer Mode: Designed for development purposes. Changes to static content are reflected automatically, but it’s not recommended for production due to potential performance issues.

Deploying Static Content in Production Mode

Here’s how to deploy static content in Magento 2 production mode:

1. Log in to Server

  • Access your Magento 2 server and log in with the file system owner account.

2. Delete Existing Content (Optional)

  • Navigate to the <your Magento install dir>/pub/static directory.
  • Delete all files and folders within this directory (excluding the .htaccess file). This ensures you’re deploying the latest version of the content.

3. Deploy Static Content

  • Use the Magento CLI command to deploy the static content. Run the following command in your terminal:
<your Magento install dir>/bin/magento setup:static-content:deploy

Additional Considerations

  • Permissions: Ensure the Magento file system owner has write permissions to the pub/static directory.
  • Static Content Signing (Optional): Magento offers static content signing, which appends version numbers to file URLs. This helps with browser caching and ensures users load the latest version of files. You can configure this in the Magento Admin Panel.


For more detailed information, refer to the Magento documentation or these helpful resources: