首页 > 解决方案 > 在 App Engine 运行时 PHP 7.2 上启用 Memcached

问题描述

几天以来,我一直在尝试使用 Symfony 框架在 Google App Engine 的 memcache 中启用会话存储。应用程序启动良好,存在 Memcached 实例,但我总是以未存储的会话结束(所有表单上的 CSRF 等)。

所以我创建了一个非常简单的 POC 来检查 Memcached 是否正常工作,但实际上并没有。

这是 POC 代码:

app.yaml

runtime: php72

resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

php.ini

extension=memcached.so

index.php

<?php

$test = new \Memcached;
var_dump( $test->add('test', '42') );
echo 'value of test is: ', $test->get('test');

以下代码的结果是:

测试的 bool(false) 值为:

Memcache 看起来与 App Engine 集成得非常好,所以我想知道为什么我不能点击它。


调试Memcached,报错如下:

(0x75b27c3c040) 未定义服务器-> libmemcached/initialize_query.cc:58

知道如何正确配置它吗?

标签: phpgoogle-app-enginememcached

解决方案


php72不支持memcache,需要使用php55才能访问memcache


推荐阅读