PrestaShop용 플러그인을 개발 중인데 작동하지만 문제는 자동 업데이트에 있습니다. 권한 문제로 인해 클라이언트 서버에서 실패하는 경우도 있습니다.
플러그인은 zip 형식(php/curl 사용)으로 다운로드된 다음 PHP 스크립트를 통해 플러그인_temp로 추출된 다음 플러그인으로 이름이 변경됩니다. 도중에 들었던 것처럼 권한이 변경되었거나 소유권이 변경되었습니다.
이러한 업데이트를 처리하는 올바른 방법은 무엇입니까? zip을 /tmp에 풀어야 할까요? 나는 많은 웹 애플리케이션이 자동 업데이트 플러그인을 가지고 있기 때문에 일종의 표준 절차가 있어야 한다고 추측합니다.
감사해요
답변1
두 가지 답변:
- zip 파일은 Unix 소유자 또는 권한 정보를 저장하지 않습니다. 대신 tar 파일을 사용하세요.
Stack Overflow에는 다음을 포함하여 이 주제에 대한 몇 가지 질문과 답변이 있습니다.
https://stackoverflow.com/questions/10735297/maintain-file-and-folder-permissions-inside-archives
- 업데이트를 처리하는 올바른 방법은 사용자가 SSH 세션에서 업로드하고 실행할 수 있는 설치 프로그램 스크립트를 작성하는 것입니다. 웹 사이트에는 자체 스크립트 파일(또는 .htaccess 파일을 덮어쓰거나 새 실행 스크립트를 추가하는 등의 권한이 없어야 합니다. ). 많은 웹 호스팅 서비스에서는 이것이 어렵거나 불가능할 수 있다는 것을 알고 있지만 이것이 엄청난 보안 허점임을 인식하는 것이 중요합니다.