첨부파일 다운로드가 안돼요...ㅠㅠ엉엉 정보
첨부파일 다운로드가 안돼요...ㅠㅠ엉엉본문
이상하게도 서버이전후 첨부파일이 다운로드가 되지 않고 있습니다.
skin파일도 변경해보고 이쪽 저쪽 수정을 하였지만 전혀 되질 않고 있습니다.
또한 몇개는 또 다운이 되고 있어서요..ㅠㅠ
고수님들에 좋은 조언 부탁드립니다.
220.77.243.56 입니다. << 여기서 자료실 입니다..ㅠㅠ
도와주세용~~~ 2000포인트 드립니다~~
skin파일도 변경해보고 이쪽 저쪽 수정을 하였지만 전혀 되질 않고 있습니다.
또한 몇개는 또 다운이 되고 있어서요..ㅠㅠ
고수님들에 좋은 조언 부탁드립니다.
220.77.243.56 입니다. << 여기서 자료실 입니다..ㅠㅠ
도와주세용~~~ 2000포인트 드립니다~~
댓글 전체

회원가입이 귀찮아서..........Pass.........ㅠ_ㅠ
저도 회원가입이 귀찮아 테스트는 못해보았지만 다음의 조언을 드릴께요.
이전 서버와 이후 서버의 간략한 내용이라도 있어야 판단이 쉽습니다.
그리고 가장 중요한 문제는 퍼미션인데 카피만 했다고 해서 퍼미션도 카피되는 것은 아니니 data및 하위폴더 와 각 폴더내에 있는 파일들의 퍼미션이 다운받기에 충분한 퍼미션으로 되어 있는지 확인하세요. 그리고 가끔 카피중 파일복사 실패로 파일이 깨진 경우도 있으니 확인해보세요.
그리고 index.php페이지의 소스를 보니 cookie domain은 ww.gyadmin.org로 되어 있던데 config.php에서 url및 cookie domain도 수정해 주셔야 합니다.
이전 서버와 이후 서버의 간략한 내용이라도 있어야 판단이 쉽습니다.
그리고 가장 중요한 문제는 퍼미션인데 카피만 했다고 해서 퍼미션도 카피되는 것은 아니니 data및 하위폴더 와 각 폴더내에 있는 파일들의 퍼미션이 다운받기에 충분한 퍼미션으로 되어 있는지 확인하세요. 그리고 가끔 카피중 파일복사 실패로 파일이 깨진 경우도 있으니 확인해보세요.
그리고 index.php페이지의 소스를 보니 cookie domain은 ww.gyadmin.org로 되어 있던데 config.php에서 url및 cookie domain도 수정해 주셔야 합니다.
ㅋㅋㅋㅋ id : jaumkang pw: 1111입니당~~도와주세용

아이디, 패스워드 오류 <== 해결하셨나요 ?
아이디와 패스워드 오류는 해결하였습니다...
아직 다운은 안돼구요..ㅠㅠ
id : jaumkang pw 1111
아직 다운은 안돼구요..ㅠㅠ
id : jaumkang pw 1111
파일을 찾을 수 없습니다 란 에러는 말 그대로 파일을 찾을 수 없어서 그럽니다. 실제 파일이 존재하는지 확인해 보세요.
하지만 파일은 있습니다. 서버상에서 다운받아 클릭도 해봤구요~~ㅠㅠ
이문제를 어떻게 해결해야할지~~~
이문제를 어떻게 해결해야할지~~~
download.php를 보면
$filepath = "$g4[path]/data/file/$bo_table/$file[bf_file]";
if (file_exists($filepath)) {
......
} else {
alert("파일을 찾을 수 없습니다.");
}
로 되어 있습니다. 즉 만일 $file[bf_file]값이 맞게 주어진다면 유일한 문제는 $g4[path]라고 볼 수 있습니다. 단 실제로 파일이 서버상에 존재한다면요...
그렇다면 $g4_path값이 제대로 설정되지 않은 경우에 그럴 가능성이 존재합니다.
실제로 소스를 보니 g4_path값이 '../../index'로 되어 있는데 소스상에서 url부분을 두고 ../../index와 /index를 혼용해서 쓰고 계시더라구요.
또한 테스트해보니 http://220.77.243.56/index/bbs/board.php?bo_table=info_01&wr_id=186 와 같이 url다음 바로 /index가 오고 있는 점이 눈에 띄던데 혹 .htaccess에서 제어를 하고 있는 건가요?
여하튼 답은 $g4_path를 어떻게 설정하는가에 따라 가능성이 주어질 것 같네요. 서버상에서 어떤 파일 및 디렉토리 구조로 되어 있는지 알지 못하기 때문에 정확한 답은 주기 어렵지만 $g4_path를 바꾸어 가면서 테스트 해보세요.
$filepath = "$g4[path]/data/file/$bo_table/$file[bf_file]";
if (file_exists($filepath)) {
......
} else {
alert("파일을 찾을 수 없습니다.");
}
로 되어 있습니다. 즉 만일 $file[bf_file]값이 맞게 주어진다면 유일한 문제는 $g4[path]라고 볼 수 있습니다. 단 실제로 파일이 서버상에 존재한다면요...
그렇다면 $g4_path값이 제대로 설정되지 않은 경우에 그럴 가능성이 존재합니다.
실제로 소스를 보니 g4_path값이 '../../index'로 되어 있는데 소스상에서 url부분을 두고 ../../index와 /index를 혼용해서 쓰고 계시더라구요.
또한 테스트해보니 http://220.77.243.56/index/bbs/board.php?bo_table=info_01&wr_id=186 와 같이 url다음 바로 /index가 오고 있는 점이 눈에 띄던데 혹 .htaccess에서 제어를 하고 있는 건가요?
여하튼 답은 $g4_path를 어떻게 설정하는가에 따라 가능성이 주어질 것 같네요. 서버상에서 어떤 파일 및 디렉토리 구조로 되어 있는지 알지 못하기 때문에 정확한 답은 주기 어렵지만 $g4_path를 바꾸어 가면서 테스트 해보세요.
letsgolee님 $file[bf_file] 이름이 틀려 진것 같이도 함니다...ㅠㅠ
서버이전시 변경을 하였거나요..ㅠㅠ
백업받은 파일과 서버상 mysql에 들어 있는 bf_file 숫자가 조금틀린것 같습니다.ㅠㅠ
이런 문제는 어떻게 해야 하나요ㅜ
서버이전시 변경을 하였거나요..ㅠㅠ
백업받은 파일과 서버상 mysql에 들어 있는 bf_file 숫자가 조금틀린것 같습니다.ㅠㅠ
이런 문제는 어떻게 해야 하나요ㅜ
제가 mysql 에서 파일 이름 21156846``~~~~~~~이렇게 쭉.hwp 이름을 복사해서
찾기를 하면 없다고 나옮니다...ㅠㅠ
업로드된 파일 개수는 같습니다..ㅠㅠ
찾기를 하면 없다고 나옮니다...ㅠㅠ
업로드된 파일 개수는 같습니다..ㅠㅠ
앞자리 숫자를 일괄적으로 바꾸기 해도 문제가 되지 않겠나요? 그렇다면 쉽게 해결할 방법은 있을거 같은데...
2056899139_361b2b21_B0E8BEE0B0FCB7C3+C1FAC0C7+C0C0B4E4+C0DAB.hwp <<파일 이름
2056899139_361b2b21_B0E8BEE0B0FCB7C3+C1FAC0C7+C0C0B4E4+C0DAB7E1.hwp <<myslq 저장된이름
2056899139_911163d8_2008B3E2B5B5+B4EBC8B8B0FCB7C3+C2FCB0EDC0.hwp << 파일 이름
2056899139_911163d8_2008B3E2B5B5+B4EBC8B8B0FCB7C3+C2FCB0EDC0DAB7E1.hwp << mysql 저장된
이렇게 뒷자리가 조금 더 길게 되어 있습니다..ㅠㅠ
어려운 건가요??
2056899139_361b2b21_B0E8BEE0B0FCB7C3+C1FAC0C7+C0C0B4E4+C0DAB7E1.hwp <<myslq 저장된이름
2056899139_911163d8_2008B3E2B5B5+B4EBC8B8B0FCB7C3+C2FCB0EDC0.hwp << 파일 이름
2056899139_911163d8_2008B3E2B5B5+B4EBC8B8B0FCB7C3+C2FCB0EDC0DAB7E1.hwp << mysql 저장된
이렇게 뒷자리가 조금 더 길게 되어 있습니다..ㅠㅠ
어려운 건가요??
파일이름과 데이터베이스에 저장된 이름의 예를 조금 더 주시고 시간좀 주세요. 먼저 분석하고 그다음에 만들어야 하는데 제가 돌아다니고 있어서 바로는 안되요.
넵~~ 일단은 제가 이름을 그냥 수작업으로 바꾸고 올리니 되더라구요~~ㅎㅎ
그래서 지금 작업중에 있습니다....
하지만 나중에라도 이런일이 발생되면 (파일이 많을시...) 문제가 될수 있을껏 같습니다.
시간 되실때 조금이라도 도움이 되는 내용을 적어주시면 감사하겠습니다..
참 답변하나 하나가 이렇게 힘이 되는질 몰랐어요.~~~
혼자서 처리하는게 아니라 같이 해주는 파트너 같은 ...ㅎㅎㅎ
저도 빨리 열심히 공부해서 답변을 해줄수 있는 고수가 되고 싶습니다..
감사합니다...letsgolee 님~~및 여러분~~ㅎㅎ
그래서 지금 작업중에 있습니다....
하지만 나중에라도 이런일이 발생되면 (파일이 많을시...) 문제가 될수 있을껏 같습니다.
시간 되실때 조금이라도 도움이 되는 내용을 적어주시면 감사하겠습니다..
참 답변하나 하나가 이렇게 힘이 되는질 몰랐어요.~~~
혼자서 처리하는게 아니라 같이 해주는 파트너 같은 ...ㅎㅎㅎ
저도 빨리 열심히 공부해서 답변을 해줄수 있는 고수가 되고 싶습니다..
감사합니다...letsgolee 님~~및 여러분~~ㅎㅎ
테스트는 해보지 못했습니다... 테스트해서 알려 주세요.
원리는 데이터베이스상의 파일 이름이 정상이고 서버상의 이름은 뒷부분이 짤렸어요. 그래서 서버상의 파일 이름을 데이터베이스상의 이름으로 바꾸는 겁니다.
<?php
/*
서버 이전으로 인해 파일이 변경된 경우 복구 스크립트.
파일 이름이 완전히 변한 경우가 아니라 이름이 줄었을 경우 사용
설치 및 방법
1. 이 스크립트를 그누보드 최 상단 폴더에 복사한다.
2. 웹상에서 파일을 실행한다.
*/
include('./_common.php');
echo "board 테이블 확인 시작<br />\n";
$result = sql_query("select bo_table from $g4[board_table]");
$bo_tables = array();
while ($bo_table = sql_fetch_array($result))
{
$bo_tables[] = $bo_table['bo_table'];
}
echo "board 테이블 확인 완료<br />\n서버상의 파일 이름과 데이터베이스상의 파일 이름 체크 시작<br />\n";
foreach ($bo_tables as $bo_table)
{
$file_dir = "$g4[path]/data/file/$bo_table";
$dir = dir($file_dir);
while ($filename = $dir->read())
{
// 디렉토리 제외
if ($filename == '.' || $filename == '..' || is_dir($filename))
{
continue;
}
$tmp = explode('_', $filename, 3);
$token = $tmp[0].'_'.$tmp[1].'_'.substr($tmp[2], 0, 2);
$result = sql_query("select bf_file, bf_filesize, bo_table from $g4[board_file_table] where bo_table='$bo_table' && bf_file like '$token%'";
// 파일이 하나밖에 없어야 하므로 while을 돌리지 않는다.
$row = sql_fetch_array($result);
if (filesize($file_dir.'/'.$filename) == $row['bf_filesize'] && $filename != $row['bf_file'])
{
rename($file_dir.'/'.$filename, $file_dir.'/'.$row['bf_file']);
echo $file_dir.'/'.$filename." 를 ".$file_dir.'/'.$row['bf_file']." 로 바꾸었습니다.<br />\n";
}
}
}
echo "모든 작업을 완료했습니다!<br />\n";
?>
원리는 데이터베이스상의 파일 이름이 정상이고 서버상의 이름은 뒷부분이 짤렸어요. 그래서 서버상의 파일 이름을 데이터베이스상의 이름으로 바꾸는 겁니다.
<?php
/*
서버 이전으로 인해 파일이 변경된 경우 복구 스크립트.
파일 이름이 완전히 변한 경우가 아니라 이름이 줄었을 경우 사용
설치 및 방법
1. 이 스크립트를 그누보드 최 상단 폴더에 복사한다.
2. 웹상에서 파일을 실행한다.
*/
include('./_common.php');
echo "board 테이블 확인 시작<br />\n";
$result = sql_query("select bo_table from $g4[board_table]");
$bo_tables = array();
while ($bo_table = sql_fetch_array($result))
{
$bo_tables[] = $bo_table['bo_table'];
}
echo "board 테이블 확인 완료<br />\n서버상의 파일 이름과 데이터베이스상의 파일 이름 체크 시작<br />\n";
foreach ($bo_tables as $bo_table)
{
$file_dir = "$g4[path]/data/file/$bo_table";
$dir = dir($file_dir);
while ($filename = $dir->read())
{
// 디렉토리 제외
if ($filename == '.' || $filename == '..' || is_dir($filename))
{
continue;
}
$tmp = explode('_', $filename, 3);
$token = $tmp[0].'_'.$tmp[1].'_'.substr($tmp[2], 0, 2);
$result = sql_query("select bf_file, bf_filesize, bo_table from $g4[board_file_table] where bo_table='$bo_table' && bf_file like '$token%'";
// 파일이 하나밖에 없어야 하므로 while을 돌리지 않는다.
$row = sql_fetch_array($result);
if (filesize($file_dir.'/'.$filename) == $row['bf_filesize'] && $filename != $row['bf_file'])
{
rename($file_dir.'/'.$filename, $file_dir.'/'.$row['bf_file']);
echo $file_dir.'/'.$filename." 를 ".$file_dir.'/'.$row['bf_file']." 로 바꾸었습니다.<br />\n";
}
}
}
echo "모든 작업을 완료했습니다!<br />\n";
?>