최신 정보
Firefox를 46으로 업데이트하면 문제가 해결되는 것 같습니다!
최초 조사
나는 또한이 성가신 문제에 직면하고 있으므로 시도해보기로 결정했습니다.
구성
- 우분투 서버 12.4
- PHP 5.5.30
- MySQL 5.6.27
- 샘플없이 Magento 2.0.4 새로 설치
- 캐시가 비활성화 된 개발자 모드
문제 복제
언뜻보기에이 문제는 완전히 무작위로 보였다. 그러나 몇 가지 테스트를 거친 후에 문제를 복제하는 방법을 정확하게 알 수있었습니다.
브라우저
먼저 Chrome, Internet Explorer 11 또는 이전 Windows Safari 5.2.17에서 문제를 복제 할 수 없었습니다. 나는 주로 FireFox (45.0.2)를 사용하고 거의 Chrome을 사용하지 않습니다. 문제를 복제하는 방법을 정확히 찾은 후에도 Chrome에서 복제 할 수 없었습니다.
탭
문제를 복제하려면 FireFox에서 여러 개의 탭을 열어야합니다.
단계
- 관리자 패널을 열고 로그인
- 대시 보드에 있으면 메뉴 항목을 클릭 할 수 있습니다. 보통 대시 보드 아이콘을 다시 클릭합니다
- 메뉴 항목을 클릭하자마자 열린 탭 중 하나를 클릭하고 관리자 패널의 로딩이 완료 될 때까지 인터넷을 계속 탐색하십시오 (탭 제목 옆의 회전 아이콘 기준).
- 안타깝게도 해당 페이지가로드되지 않습니다.
조사
따라서 클라이언트가 관리자 패널의 탭에 초점을 맞추지 않으면 Magento 2는 웹 사이트가 완전히로드하는 데 필요한 모든 리소스를로드하지 않는 것 같습니다 .
무한 로딩 관리자 패널 페이지로 돌아 왔을 때 주목 한 것은 성공적으로로드 된 많은 리소스가 있다는 것입니다.
Fabian이 말했듯이 콘솔에 오류가없고, 여전히로드되는 리소스가없고로드하지 못한 리소스가 없습니다. 페이지로드가 완료된 것처럼 보입니다.
그러나 Firefox의로드 중지 버튼 (URL 표시 줄의 X)을 클릭하면 페이지가 무한 로딩 상태 일 때 여기에 없었던 여러 리소스가 네트워크 탭에 추가 된 것을 알았습니다.
참고 : 아래 스크린 샷은 대시 보드 전용이므로 구성 페이지에서로드 중지 버튼을 클릭하면 더 많은 리소스가로드 된 것으로 나타났습니다.
따라서 대시 보드 페이지의 경우로드 중지 버튼을 클릭하면 해당 리소스가 추가되었습니다.
페이지가 정상적으로로드되면 다른 탭으로 전환하지 않고 DOM로드 후 다음 리소스가로드됩니다 (AJAX를 통해 가정).
따라서 어떤 이유로 든 페이지가 무한로드 상태 인 경우 다음 리소스가 자동으로로드되지만 페이지가 제대로로드되면 DOM로드 후에로드됩니다.
/static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-popup.html
/static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-slide.html
/static/adminhtml/Magento/backend/en_US/Magento_Ui/templates/modal/modal-custom.html
/static/adminhtml/Magento/backend/en_US/mage/apply/scripts.js
그것이 내가 디버깅 작업에 얼마나 멀리 도달했는지, 나는 우리가 문제를 테스트하고 좁히기 위해 할 수있는 일이 많이 있다고 생각하지만 더 많은 테스트를 할 시간이 없었으므로 시간이되면 다시 돌아올 것입니다.
추가 조사
그래서 FireFox에 HTTPFox 플러그인을 설치했습니다.
다음은 로딩 1 분 후 로딩 중지 버튼을 클릭했을 때 얻은 것입니다 ( jquery.storageapi.min.js
시간 열에 59가 있음 을 알 수 있습니다 ). 강조 표시된 행은로드를 중지 한 후로드 된 리소스입니다.
GitHub에서 사용 가능한 마지막 버전으로 jquery.storageapi 라이브러리를 업그레이드하려고 시도했지만 불행히도 문제를 해결하지 못하는 것 같습니다.
favicon 로딩이 목록의 다음에 올랐을 때, favicon을 헤드에 추가하는 코드에 주석을 달았지만 문제를 해결하지 못했습니다.
domReady.js
파일 이름이 잘못 될 수있는 것처럼 들리지만 우연이 아닌 파일 을 디버깅하려고했습니다 .
또한 다음 두 access.log
파일이 있습니다.
아직도 여기서 무슨 일이 일어나고 있는지 알 수 없습니다.
최신 정보
최근에 설치를 두 가지로 변경했습니다.
- FireFox를 46.0으로 업그레이드
- 2.0.4에서 2.0.5로 업그레이드
이제 더 이상 문제를 복제 할 수 없습니다.