2010-04-22 2 views
0

내 비디오 웹 사이트에 쉘 배경 변환기가 있습니다. 파일을 업로드 할 때 APC가 키를 삭제할 수 없어 가시성이 업데이트됩니다. 스크립트는 다음과 같이 구성되어 있습니다.apc_delete() 백그라운드 스크립트에서 작동하지 않습니다.

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

이 모든 문제는 APC를 제외하고는 잘 작동하며이 문제가 발생한 사이트의 유일한 스크립트입니다. 나는 혼란 스럽다.

답변

1

아파치 외부의 프로세스에서 아파치 내부의 APC 공유 메모리 세그먼트에 액세스 할 수 없습니다. CLI 모드에서 APC를 활성화하면 CLI 스크립트가 자체적으로 공유 메모리 세그먼트를 수신합니다.

당신은이 오류를 해결할 수 있습니다

  1. 대신에, 어디에서 단지 하나의 아파치 예를 당신이에서 호출 할 수있는 URL (예 : http://example.com/delete.php?id=5) 노출
  2. 액세스 할 수 APC,의 memcached를 사용하여 CLI 스크립트 URL은 아파치 내부의 스크립트에 의해 처리되며, APC에 액세스 할 수 있습니다.
+0

굉장! 빠른 답변 감사합니다. – Jared

관련 문제