网页服务器
Drupal 8 可以在任何符合 PHP 版本要求 的 网页服务器 上运行。
许多主机服务商提供不同版本的 PHP。默认的 PHP 版本可能低于 Drupal 所需版本,因此请在您的主机控制面板中检查当前版本,并在必要时将其更改为最新受支持的版本。
PHP 定期发布安全更新,请在 php.net 上关注更新,并根据需要更新 / 修补服务器,或选择能自动处理 PHP 更新的主机服务提供商。
如果您希望在本地计算机上创建和开发 Drupal 网站,您可以在本地安装所有必要的组件。
安全提示:某些安全功能仅适用于 Apache(以及部分适用于 IIS),并依赖 .htaccess 和 web.config 文件。当不使用 Apache 时,您需要自行实现这些功能。
文件与文件夹的访问权限
Drupal 和 PHP 必须对 /sites/default/files 目录具有读写权限。此目录用于存储缓存文件(压缩后的 CSS 和 JavaScript)以及通过 Drupal 界面上传的文件。
安全提示:不安全的权限设置(如 0777)不被推荐使用。
Apache
Apache 是 Drupal 最常用的网页服务器。Drupal 可运行于 UNIX / Linux、OS X 或 Windows 系统上的 Apache 2.x。Drupal 9 至少需要 Apache 2.4.7。
大多数 Drupal 的开发与部署都在 Apache 上进行,因此社区在 Apache 上的经验与测试比其他服务器更丰富。
必须启用 Apache 的 'mod_rewrite' 模块,用于支持简洁 URL。
Apache 虚拟主机(VirtualHost)配置中必须包含 AllowOverride All 指令,以允许 Drupal 使用其 .htaccess 文件。
如果 Apache 服务器默认启用了 Options +MultiViews,则虚拟主机配置中还应包含 Options -MultiViews(或在现有 Options 指令中添加 -MultiViews)。
在某些系统(尤其是 OpenSuse 发行版)中,您可能需要在 .htaccess 文件中添加符号链接设置。根据安全配置,您可能需要添加 +FollowSymLinks 或 +SymLinksIfOwnerMatch(尤其是在共享主机环境中)。如果需要,屏幕上的错误提示可能无帮助,但错误日志会正确标识问题。如果您编辑了 .htaccess 文件,请记住在 Drupal 更新后(文件被覆盖时)需要重新修改!
Nginx
Nginx 是一种广泛使用的网页服务器,专注于高并发、高性能和低内存占用。
Drupal 可运行在旧版 Nginx(0.7.x、0.8.x、1.0.x、1.2.x)、稳定版 1.8.x 和主线版 1.9.x 上,并可部署于 UNIX / Linux、OS X 或 Windows 系统。Nginx 是 Apache 的流行替代方案,因此社区也积累了大量 Nginx 的经验和测试案例。
Nginx 官网提供了 Drupal Nginx 配置文件,可用于配置 Drupal 网站。
Microsoft IIS
Microsoft IIS 是一种网页服务器及其功能扩展模块集,用于 Microsoft Windows 系统。
Drupal 核心可在 IIS 5、IIS 6、IIS 7、IIS 8 或 IIS 10 上运行,只要 PHP 配置正确即可。
若要启用简洁 URL,可能需要使用第三方产品。对于 IIS 7 或 8,可以使用 Microsoft 的 URL 重写模块或其他替代方案。
在 IIS 7 上运行 Drupal 需要 Windows 2008 Server SP2 或更高版本以支持 fastCGI。
PHP 内置网页服务器(仅用于开发)
PHP 内置网页服务器 自 PHP 5.4.0 起作为 CLI SAPI 工具包含其中。
该服务器旨在帮助开发 PHP 应用程序,也适用于测试或在受控环境中演示应用程序。但它并非完整的网页服务器,因此不应用于公共或生产环境。
您可以通过 Drupal 快速启动命令 启动该网页服务器。