내 고객이 Magento 시스템의 일부 코드로 이상한 문제를보고하고 있습니다 (Magento는 PHP로 작성된 전자 상거래 플랫폼입니다). 난 주위에 찌를 시스템에 직접 액세스 할 수 없어 디버그, 그래서 만약 당신이 이런 식으로 본 적이 스택 오버플로 물어 줄 알았는데.PHP가 자동로드 시도 임의의 클래스 이름
그들은 때때로보고있는 오류가 이로부터
#0 /Users/theirusername/Sites/project/lib/Varien/Autoload.php(93): mageCoreErrorHandler(2, 'include(O1ucm02...', '/Users/theiruse...', 93, Array)
#1 /Users/theirusername/Sites/project/lib/Varien/Autoload.php(93): Varien_Autoload::autoload()
#2 [internal function]: Varien_Autoload->autoload('o1ucm02owqn3iww...')
#3 [internal function]: spl_autoload_call('o1ucm02owqn3iww...')
#4 /Users/theirusername/Sites/project/app/code/local/Theirname/Commercebug/Model/Observer.php(191): defined('Mage_Core_Block...')
을 포함하는 호출 스택으로
Warning: include(O1ucm02owqn3iwwcx5osz2m2.php): failed to open stream:
을, 나는 PHP는이 O1ucm02owqn3iwwcx5osz2m2
라는 이름의 클래스를 인스턴스화 할 필요가 생각하는 것을 추론 할 수있다. 그러나, 왜 PHP는 이것을 할 수도 있습니다 알아낼 수 없습니다. (Observer.php
라인 (191) 주변의 호출 스택에서 # 4) 오류를 트리거 선은이 라인은 어떤 PHP 클래스 내가 때문 "해야한다"라고 (O1ucm02owqn3iwwcx5osz2m2
라는 언급하지 않는 것
if(defined("Mage_Core_Block_Template::XML_PATH_DEBUG_TEMPLATE_HINTS"))
{
$path = Mage_Core_Block_Template::XML_PATH_DEBUG_TEMPLATE_HINTS;
}
해야한다 고객이 직접 코드를 배포 했으므로 잠재적 인 문제를 찾기 위해 사본을 얻으려고 노력하고 있습니다.)
어떤 일이 벌어지고 있는지 알 수있는 사람이 있습니까? 이 문제는 일부 버전에서 알려진 PHP 버그/문제입니까? 아니면 PHP 오토로더/defined
/클래스 상수와 같은 문제를 본 사람이 있습니까?
다른 타사 확장 프로그램은 무엇입니까? 또한 다른 PHP 모듈에는 무엇이 있습니까? 어떤 종류의 부패와 같은 느낌. 그들은 APC 또는 XCache 또는 eAccelerator를 사용합니까? 또한 항상 동일한 클래스가 요청되었거나 항상 임의의 난센스 문자열입니까? –
우연히 Zend Guard Loader를 사용하게됩니까? 그것은 이름에서 수시로 이름을 바꾸는 것에 열혈적으로 보입니다. 따라서 당신이 말하고있는 방식으로 스크립트를 깨는 것 같습니다. – Jasper
은 저에게 악성 코드처럼 보입니다. –