You’ve completed the initial build of your site on your computer and you’re ready to either collaborate with others on your team, or make it live. You’ll need a web server with a hosting provider. Most hosting providers have the technical specifications required for hosting Drupal CMS.
Once you have a web server, you need to move your site from your local DDEV environment on your computer to the web server where others can access it, too.
Tip: Drupal CMS hosting requirements are the same as Drupal 11. If a hosting provider supports Drupal 11, your Drupal CMS site will also work there.
Prerequisites
This tutorial assumes that your site is currently hosted locally using DDEV, or in another location that you can export the site’s database and files from.
Pick a hosting provider
Drupal CMS works with a variety of hosting providers. It runs on commonly used open source software, so you have plenty of options! Check the Drupal 11 requirements to see the recommended server software and versions.
If you’ve already got a hosting provider that you work with, chances are good that they’ll be able to accommodate your Drupal CMS site. Ask your hosting provider’s support team if you’re not sure.
If you don’t already have a hosting provider, Drupal.org maintains a list of providers who have demonstrated expertise in Drupal and a commitment to support the Drupal code and the Drupal community. Check out https://www.drupal.org/hosting.
The remaining steps will likely depend on your hosting provider. We recommend you read your hosting provider’s documentation for specific instructions on transferring files and importing a database.
Generic Drupal CMS site publishing
When you first publish your site, what you’ll be doing is moving your site from your computer to a web-based hosting provider. This means you’ll need to deal with the following:
- Code: The PHP, HTML, CSS and JavaScript code that makes up your site. These are stored in files in your Drupal CMS project’s directory. These files will need to be copied to the appropriate location on the web server so that the code can be run successfully.
- Content: Content added to your site by you and your team that you want published on the live site. This will need to be exported from DDEV and moved to its new home. This includes:
- Database: Content, like the text of a blog post or a review, entered into the database. Export with ddev export-db.
- Files: Images, videos, and other documents that you and your team uploaded to Drupal CMS while authoring content. Find these in the web/sites/default/files/ directory.
- Settings: The files in the web/sites/default/ directory (for example, settings.php) contain environment-specific settings like information about how to connect to the database server.
- Configuration: The configuration of your site, including content types, views, sitewide settings, and the other information you provided to Drupal CMS that determines how your site functions. Depending on your hosting situation, this might be stored in the database, or it might be stored as YAML files in the project’s code base.
Your live site is the official source for your content
Once your site has been moved to a hosting provider the new live public facing site is the official place for any content updates. Any changes you make to the content on your local DDEV-powered site will not be visible to anyone but you. Make content additions and updates on the live site. This is also the place to invite others on your team to collaborate on the site to create or edit content.
When you export the database content from DDEV and move it to your hosting provider – that’s a one-time process. Once the site is live, you’ll want to make sure that you don’t overwrite the hosting provider’s version of the database, or you’ll risk breaking your site!
If you want to learn how to manage multiple copies of the same site, see 11.7. Concept: Development Sites in the Drupal User Guide.
Wrap-up
In this tutorial, we covered the steps required to make your Drupal CMS site live. Since this is very dependent on your specific hosting provider, you’ll need to consult their documentation for the details. The general process involves making a copy of your site’s code, content (database and files), and configuration, then moving them to the appropriate places on your provider’s servers.
Congratulations! 🎉 You’ve just taken the first step to sharing your story with the whole world.
Back to top