Development Staging Production Environment Checklist
Many outages happen because changes are tested directly on production. A simple environment model helps separate experiments, testing and live traffic. Even solo operators can benefit from a basic dev, staging and production workflow.
Core principle
Production is where users are affected. Staging is where changes are verified. Development is where experiments happen. Do not mix these roles casually.
Checklist
- Define what production means.
- Create a staging copy if the site is important.
- Keep development experiments away from live users.
- Use separate domains or subdomains.
- Use separate database copies when testing risky changes.
- Prevent staging from being indexed by search engines.
- Test updates on staging first.
- Document how changes move to production.
- Keep secrets separated if possible.
- Clean up old staging copies.
Reusable lesson
This applies to WordPress changes, Nginx configs, Docker deployments, automation workflows, API workers and AI agents.
When to Use This Checklist
Use this checklist when creating a safer workflow for testing website, server, Docker or automation changes before production.
Required Tools
Production site, staging domain, backup, database copy, robots or indexing controls, deployment notes
Before You Start
Do not expose staging with real sensitive data unless access is protected and indexing is blocked.
Structured Checklist Steps
- Define production.
- Create staging copy.
- Keep experiments separate.
- Use staging subdomain.
- Use database copy.
- Block indexing.
- Test updates first.
- Document release flow.
- Separate secrets.
- Clean old staging.
Verification Steps
- Production remains stable.
- Staging is not indexed.
- Risky changes are tested first.
- Database copy is separate.
- Release process is documented.
Rollback Plan
If staging changes break, delete or restore staging only. Do not push the change to production until the failure is understood.
Common Mistakes
- Testing risky changes on production.
- Letting staging get indexed.
- Using production API keys in test workflows.
- No database separation.
- Old staging copies becoming security risks.
Related Commands
cp -r /var/www/example.com /var/www/staging.example.com
mysqldump -u db_user -p prod_db > prod_backup.sql
mysql -u db_user -p staging_db < prod_backup.sql
curl -I https://staging.example.com