Drupal AWS EC2实例登录报错:需接受ec2-XXX域名Cookie
方法1:通过配置调整Cookie域名(无需补丁)
该错误核心是Drupal的Cookie域名配置与EC2实例域名不匹配,直接修改配置即可解决:
- 登录EC2服务器,定位到Drupal的
settings.php文件,默认路径为/var/www/html/sites/default/settings.php(根据实际部署路径调整) - 编辑文件,添加以下配置(替换为你的EC2完整域名,前缀加
.以适配子域名场景):$settings['cookie_domain'] = '.ec2-XXX.compute-1.amazonaws.com'; - 保存文件后,重启Web服务器:
- Apache:
sudo systemctl restart httpd - Nginx:
sudo systemctl restart nginx
- Apache:
- 清除Drupal缓存:
- 已安装Drush:执行
drush cache:rebuild - 无Drush:手动删除
sites/default/files/php目录下的所有缓存文件
- 已安装Drush:执行
方法2:正确应用补丁的步骤
若坚持使用补丁修复,按以下标准流程操作(适配Drupal 9/10版本):
- 确认Drupal核心版本:执行
drush status查看版本信息 - 将对应版本的补丁文件上传至Drupal根目录
- 安装补丁工具(未安装时):
- Amazon Linux/CentOS:
sudo yum install patch -y - Ubuntu/Debian:
sudo apt install patch -y
- Amazon Linux/CentOS:
- 执行补丁命令(替换
[补丁文件名]为实际文件名):patch -p1 < [补丁文件名].patch注:
-p1参数用于忽略补丁文件中的顶级目录层级,是Drupal补丁应用的标准参数 - 若出现文件未找到错误,检查补丁版本与Drupal版本是否匹配,或补丁文件路径是否正确
- 补丁应用成功后,重复方法1中的重启服务器、清除缓存步骤
额外排查点
- 确认浏览器未阻止该EC2域名的Cookie(检查浏览器隐私设置中对应域名的Cookie权限)
- 若使用负载均衡或CDN,需确保
X-Forwarded-Host等头部信息正确传递至Drupal服务器,避免域名检测逻辑异常
内容的提问来源于stack exchange,提问作者Frankinstyyn
相关产品推荐
相关产品推荐

