내 magento 2 웹 사이트가 다운되었습니다 : 알 수 없거나 잘못된 시간대 () 오류


13

여기에 이미지 설명을 입력하십시오

magento 웹 사이트에 액세스 할 때 오류가 발생합니다

DateTimeZone :: __ construct () : 알 수 없거나 잘못된 시간대 ()

차단 및 CMS 페이지와 프런트 엔드의 모든 제품 목록 페이지에 404 페이지를 찾을 수 없음 오류가 표시됩니다. 최대한 빨리이 문제를 해결하도록 도와주십시오. 여기에서이 문제를 확인할 수 있습니다. 백업 사이트를 복원하여이 오류를 해결합니다.

그러나이 오류가 발생하는 이유를 알고 있다면이 질문은 여전히 ​​열려 있습니다.


내 대답이 도움이되지 않습니까?
— Siarhey Uchukhlebau

현재 Magento 2.1.3에서 동일한 문제가 있습니다. 홈페이지는 작동하지만 다른 모든 페이지는 작동하지 않습니다. 내 시간대가 제대로 설정 core_config_data에 Europe/Amsterdam.
— Giel Berkers

답변:


41

정확히 어떻게 발생했는지 모르지만 시나리오에서 core_config_data테이블이 손상되었습니다. 어떻게 든 path설정 general하고 value설정하여 새 행을 추가했습니다 NULL.

데이터베이스의 잘못된 구성

이 원인 Magento\Framework\App\Config\ScopeConfigInterface::getValue()에 대한 public/vendor/magento/framework/Stdlib/DateTime/Timezone.php::scopeDate()반환에 NULL대신 Europe/Amsterdam. 말할 것도없이, \DateTimeZone()객체가 생성 되었을 때 즉시이 예외가 발생했습니다.

따라서 다른 사람에게이 오류가 발생하면 구성을 시작하기에 확실한 장소 일 수 있습니다.


4
나는 똑같은 문제가 있었다. core_cofig_data뭔가 다른 항목을 삽입하려고 할 때 실수로 테이블에 새 줄을 추가했습니다 . Mac에서 SequelPro 앱을 사용하고 있으며 새 행을 추가하면 자동으로 general경로 아래에 추가 됩니다.
— Alex Dinca

1
p, 나에게도 같은 문제가있어 나중에 참조 할 수있는 빠른 방법이다.DELETE FROM core_config_data WHERE path LIKE 'general' AND value IS NULL LIMIT 1;
— B00MER

이것이 M2 EE v 2.1.5의 문제임을 확인할 수 있습니다. uRapidFlow를 설치할 때까지 작동하던 새로 설치. 이것이 마 젠토 버그인지 또는 확장 기능에 문제인지 확실하지 않습니다.
— sparecycle

1
그것은 매력으로 작동하고 데이터베이스에서 "일반" "NULL"줄을 삭제 한 후 캐시를 정리하는 것을 잊지 마십시오;)
— Alex

1
path = 'general'인 core_config_data에서 공백 / null 값 으로이 문제는 Magento 1조차도 문제가되었다고 말할 수 있습니다.
— 랜드

9

시간대는 지원되는 시간대 목록 중 하나 여야합니다 . 빈 시간대를 사용하고있는 것 같습니다.

다음 쿼리를 사용하여 현재 상점 시간대를 감지하십시오.

SELECT * FROM `core_config_data` WHERE `path` = 'general/locale/timezone'

결과가 비어 있으면 기본값을 삽입하십시오.

INSERT INTO `core_config_data`(`path`, `value`) VALUES ('general/locale/timezone', 'Europe/Moscow')

이것이 도움이되지 않으면 프로젝트 내부에서 검색하십시오. 코드에서 오류가 발생합니다. 그런 다음 디버깅을 시도하십시오. 빈 시간대 값이 오는 곳에서 감지하십시오.


백업을 되돌려 서 이전 웹 사이트를 되돌 렸습니다. 마감일을 맞이하여 문제의 원인을 확인하지 않았지만 답장을 보내 주셔서 감사합니다. 나는 당신의 대답을 upvoted하고 그것을 허용과 같은 문제가 그러면 나는 당신의 대답을 표시합니다 경우 내가 확인합니다
— Murtuza Zabuawala

2.3.0의 바닐라 설정 에서이 문제에 직면하여 위의 솔루션을 사용하여 해결했습니다. 감사합니다 @Siarhey
— Praful Rajput

0

정답으로 문제를 해결했습니다.

1, 선택 :

select * FROM `core_config_data` WHERE path = 'general'

2, 삭제 :

DELETE FROM `core_config_data` WHERE path = 'general'

그런 다음 웹 사이트가 작동하고 있습니다. 도움이되기를 바랍니다.


Giel Berkers는 이미 새로운 답변과 동일한 답변을 했습니까 ??
— Murtuza Zabuawala

네, 감사합니다!
— jerry xu
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.