php 파일 다운로드 손상

그냥 테스트 하 고 난 같은 행동을 얻을. 그러나, 조금 되감기 하자. 나는 리디렉션 설정 다운로드 방법으로 테스트 하지 않았다. 나는 단지 강요에 그것으로 테스트. (Ob 기능 중 하나) 나를 위해 작동을 이동 하 고 강제 중 하나를 작동 하지 않습니다. 그것은 어떻게 든 다운로드 방법으로 놀 것 같다 문제는 나를 위해 멀리 갈 했다. FWIW,이 테스트 사이트는 몇 개월 오래 된 이며 그것은 매우 내가 오늘 전에 다운로드 방법 설정을 건드리지 한 적이 있다. 이제 부터는 다운로드 방법을 변경 하 여 다시 강제 전환 하 고 다른 ob 기능에 관계 없이 다운로드가 작동 합니다. 심지어 ob 기능이 없는 곳 에서도 작동 합니다. 나는 목표가 강제 작동 하는 것입니다 확신 합니다. 그러나이를 실현 하 고 테스트를 위한 다운로드 방법을 지정 하지 않았기 때문에 분명히 확인 하 고 싶었습니다. 아마도 여기에서 플러시 () 호출을 추가 해야 합니다: 더 나은 것은 숫자 Id만 받아들이고 데이터베이스에서 파일 경로와 이름을 가져오는 것입니다 (또는 텍스트 파일이 나 키 = > 값 배열이 자주 변경 되지 않는 경우). 아무것도 맹목적으로 요청을 받아들이는 것 보다 낫다.

@vivex @lmprice 원래 swagger 코드를 변경 하지 않고는 해결할 수 없다고 생각 합니다. 이것은 매우 광범위 한 문제 이며 불행 하 게도 PHP 매뉴얼은 오류로 시달려 있습니다. 개발자는 일반적으로 „이것은 나를 위해 작동“ 라고 그들은 완전히 이해 하지 못하는 물건을 복사 합니다. 아르고, 나는 100%에 동의 하지만 때로는 총 아래에 당신이 해야 할 일을 할 필요가 작업 코드가 필요 합니다. Php 헤더를 사용 하 여 파일 전달 방법은 너무 새로운, 결코 완료 하 고 난 최대한 빨리 솔루션을 필요로 하고있다. 이 방법은 현재와 나는이의 더 나은 기능 버전을 개발 하기 위해 비행기에 대 한 작동 합니다. 누구 든 지 이것이 여전히 최신 3 x 버전의 문제 인지 확인할 수 있습니까? @JJJ 이것은 우리가 완전히 어쨌든 처리를 종료 파일 다운로드 프로세스의 맨 끝에서 실행이 있기 때문에 여기에 어떤 우려를 생각할 수 없다. 오류가 발생 하면 fpassthru ()는 FALSE를 반환 합니다. 그렇지 않으면 fpassthru ()는 핸들에서 읽은 문자 수를 반환 하 고 출력으로 전달 합니다. 나는 정확한 정보만을 제공 하기 위해 최선을 다하고 있습니다.

일반적인 PHP 오류를 피하는 방법에 대 한 기사 자체 오류를 포함 하는 경우 그것은 정말 슬픈 것. 에 관계 없이, 내 포인트 스탠드: PHP는 작동 하는 것으로 보인다 코드를 함께 해킹 쉽게, 하지만 개발자는 읽고 공식 사양을 준수 해야 합니다. 하지만 당신이 하기 전에, 그것에 대해 생각: 누구 든 지 서버에 어떤 파일을 요청할 수 있습니다., 그것은 공공 html 영역 외부에 있더라도. 추측은 너무 어렵지 않으며 몇 번의 시도로 공격자가 구성 또는 암호 파일을 얻을 수 있습니다. 이제 범위가 있으므로 여러 범위를 포함 하지 않고 범위 자체가 유효 하다는 것을 바이트로 표현 했는지 확인 해야 합니다 (끝은 시작, 시작이 음수가 아니며 끝이 파일 자체 보다 크지 않습니다.).