0

我的视频网站上有一个 shell 背景转换器,我似乎无法让 APC 在上传文件并更新其可见性时删除密钥。该脚本的结构如下:

if(file_exists($output_file))
{ 
   $conn->query("UPDATE `foo` SET `bar` = 1 WHERE `id` = ".$id." LIMIT 1"); 
   apc_delete('feed:'.$id); 
}

除 APC 外,一切正常,这是网站上唯一遇到此问题的脚本。我难住了。

4

1 回答 1

1

您无法从 apache 外部的进程访问 apache 内部的 APC 共享内存段。如果在 CLI 模式下启用 APC,CLI 脚本只会接收它们自己的共享内存段。

您可以通过以下方式解决此问题:

  1. 使用 memcached 而不是 APC,它可以从任何地方访问,而不仅仅是单个 apache 实例
  2. 公开可以从 CLI 脚本调用的 URL(例如http://example.com/delete.php?id=5 )。该 URL 将由 apache 内部的脚本处理,因此可以访问 APC。
于 2010-04-22T01:43:14.793 回答