KBoard에서 다운로드 스킨을 사용중입니다.
다운로드 링크를 복사하여 사용하는데
같은 첨부파일을 다운로드 받는데 링크가 없다고 나온다고 합니다.
혹시 kboard-file-download-nonce= 의 값이 매일 바뀌는지요?
안녕하세요~^^
올려주신 내용만으로는 원인을 파악할 수 없습니다.
우선, 해당 첨부파일이 실제 경로에 존재하는지 확인해보시겠어요?
kboard-file-download-nonce는 wp_nonce_field 함수를 참고해주세요.
비회원으로도 확인 가능한 페이지 알려주시면 살펴보겠습니다.
고맙습니다.
다운로드 링크는 아래와 같은 형식입니다.
http://도메인/?action=kboard_file_download&uid=45&file=file1&kboard-file-download-nonce=0e3acaecd7
여기서 kboard-file-download-nonce= 값이 수시로 바뀝니다.
이 값이 바뀌면 파일이 다운로드가 안됩니다.(지난주에 복사한 링크로 다운로드가 안됨)
오늘도 오전에 확인한 링크주소와 오후에 확인한 링크주소가 다릅니다.
오늘변경된 kboard-file-download-nonce= 값이 다르지만 파일이 다운로드가 되었는데
지난주에 복사한 다운로드 링크로는 같은 파일을 다운로드 하려면
"이 페이지는 외부에서의 접근을 제한하고 있습니다."
라고 나옵니다.
원인은 이 kboard-file-download-nonce= 이 계속 바뀌는 것입니다.
홈페이지에서도 다운로드가 가능하지만 외부에 해당 링크를 알려주어서
파일을 다운로드 하려는데 이 kboard-file-download-nonce= 값이 계속바뀌어서
다운로드를 못하게 합니다.
이 kboard-file-download-nonce=을 고정하거나, 나타나지 않도록 하는 방법은 없는지요?
KBoard 플러그인에서 nonce는 보안을 위해 사용됩니다.
nonce는 별 다른 설정을 하지 않으셨다면 하루 동안 유지됩니다.
첨부파일 다운로드 시 nonce를 체크하지 않으시려면
FTP로 접속해서 /wp-content/plugins/kboard/class/KBController.class.php 파일에
아래의 코드를 지우신 후에 확인해보시겠어요?
if(!isset($_GET['kboard-file-download-nonce']) || !wp_verify_nonce($_GET['kboard-file-download-nonce'], 'kboard-file-download')){
if(!wp_get_referer()){
wp_die(__('This page is restricted from external access.', 'kboard'));
}
}
외부에서 바로 첨부파일을 다운로드 가능하게 한다면 보안상의 문제가 생길 수도 있습니다.
고맙습니다.
일단 어떤 내용인지 알겠습니다.
알려주신 답변대로 해보니 다운로드가 문제없이 진행됩니다.
일단 테스트 후 보안문제로 인해 계속 진행될 것인가는 고민하겠습니다.
감사합니다.