もはや常識だと思うが、ウェブシステム開発にあたって3つの環境はそれぞれ独立して用意しておくといい。(独立といっても同じサーバにあっても構わないこともある。) 開発サーバ: 開発者用テスト環境 ステージングサーバ: 顧客用レビュー環境 プロダクションサーバ: 本番環境 開発サーバ 開発者がコミットした内容を開発者が反映し、開発者がテストする環境。基本的に顧客や運用チームに見せることはない。 ローカル開発環境とは別に用意するのがポイント。「ローカルだと動くんだけど」病にいち早く気がつくために重要。ローカルはしばしば、開発者がライブラリへのリンクや各種設定を無意識のうちに行なっていて、そのためローカルでは動くがサーバでは動かないということがある。 この病の典型的な例としては次のようなものがある。 Case-Insentive環境(ローカル)で動くが、Case-sensitive環境(リモート)で
![ウェブ開発で大切な3つの環境: 開発・ステージング・プロダクション - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/f8bdf5b98c1b1b58ff36cd01d3cd36a705b73a69/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JUUzJTgyJUE2JUUzJTgyJUE3JUUzJTgzJTk2JUU5JTk2JThCJUU3JTk5JUJBJUUzJTgxJUE3JUU1JUE0JUE3JUU1JTg4JTg3JUUzJTgxJUFBMyVFMyU4MSVBNCVFMyU4MSVBRSVFNyU5MiVCMCVFNSVBMiU4MyUzQSUyMCVFOSU5NiU4QiVFNyU5OSVCQSVFMyU4MyVCQiVFMyU4MiVCOSVFMyU4MyU4NiVFMyU4MyVCQyVFMyU4MiVCOCVFMyU4MyVCMyVFMyU4MiVCMCVFMyU4MyVCQiVFMyU4MyU5NyVFMyU4MyVBRCVFMyU4MyU4MCVFMyU4MiVBRiVFMyU4MiVCNyVFMyU4MyVBNyVFMyU4MyVCMyZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjIzZGIwNDc0M2JhOWEwOGYxNTkwYWQ1MzgyY2MxYTQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwc3VpbiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NGFlNjk2NWUyOWFiNjg4MmRlNmViY2E4NDc2NWMxMjA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D1a68cbe8621ac576d3e48bfd0b84468c)