一般情况下,一个项目应该有以下三个基本的项目环境:
Local - 开发环境
Staging - 线上测试环境
Production - 线上生产环境
Laravel 社区提倡使用 Ubuntu 系统,开发环境 Homestead 中默认也是使用 Ubuntu 系统。所以服务器系统应该优先考虑 Ubuntu,并且是 LTS 支持的系统,如 Ubuntu 20.04 LTS 或者 Ubuntu 22.04 LTS 。
PHP 版本应该优先考虑 PHP 8,甚至是最新版的 PHP 8.1。不止因为其运行高效,还因为随着新版本的发布,老版本的 PHP 会停止维护,包括安全更新。
数据库软件应该优先选择 MySQL,因为其市场占有率最高。
MySQL 8.0 与 PHP 8 一样,大势所趋。选择版本时应该优先考虑 MySQL 8.0。
应该优先选择流行稳定版本。线上环境绝不使用 Beta 或者其他不稳定发行版。
出于安全考虑,线上环境必须只开放以下端口:
80 HTTP
443 HTTPS
22 SSH
统一使用域名 .test
作为后缀。
除了域名等其他独立应用配置以外,环境必须跟 Production 保持高度一致性,可以的话应该与 Production 使用同台机器。